Linked by Thom Holwerda on Tue 15th Jan 2013 21:24 UTC
Thread beginning with comment 548955
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
OzzyLondon,
"a = a + 1 = a.operator+( T other )
a++ = a.operator++( int )
++a = a.operator++()
Three completely different function calls"
You are absolutely correct. And the post-increment operator highlights a C++ syntactic hack in and of itself. Personally I'm a bit disappointed that the language designers reverted to such an ugly hack (passing in unused int parameter to distinguish between functions).




Member since:
2006-01-25
a = a + 1;
to
a++;
in the name of readibility!!!
If it is purely a readability argument, I see no reason to not use the increment operator, as long as it is alone or just being used in a loop construct. Throwing it into an array index or dropping it into a computation is confusing and dangerous.
Your teacher may have just been trying to avoid having to deal with explaining prefix vs postfix increment, how they evaluate, and all the confusion that usually leads to with a newish programmer. Sometimes teachers do things that seem silly and pointless when your still green around the ears but 20 years later you go "yeah, I get it now"...
Edited 2013-01-16 02:56 UTC