Мы можем определить a++
как
a = a + 1;
Что самоочевидно, что делает копию a
затем добавляет 1 к нему и помещает результат в a
,
Но можем ли мы определить ++a
так же? Может быть, ответ очень прост, но я не знаю об этом.
a ++ и ++ a имеют различия в приоритете.
— ++: вы оцениваете до увеличения;
— ++ a: вы увеличиваете a до того, как оно будет оценено или использовано
Разница в том, что:
int a = 1;
int b = ++a;
// Now a == 2 and b == 2
int c = 1;
int d = c++;
// Now c == 2 and d == 1
Разница заключается в возвращаемом значении операции.