int value = 5; // this type of assignment is called an explicit assignment int value(5); // this type of assignment is called an implicit assignment
They differ if a class has a constructor marked 'explicit'. Then, one of these does not work.
Otherwise, no difference.