Говорят, что, например, в C++ префиксный инкремент (++i) работает намного быстрее постфиксного (i++).
Тогда нафиг надо постфиксный инкремент или постфиксный декремент?
Они нужны для того, чтобы внутри выражения использовать значение переменной ДО увеличения. Например, стандартное копирование C-строки:
while(*out++ = *inp++);
Если мы перегружаем операцию инкремента, префиксный работает чуть быстрее (не нужно сохранять предыдущее значение).
Если же используем встроенную операцию, то префиксный если и работает быстрее, то только внутри выражений (например x = 5 * ++i;). А если отдельные ++i; и i++;, то никакой разницы нет.
Но тут ещё от системы команд процессора и качества компилятора зависит: например, в PDP-11 *a++ = *b++; (одна команда процессора) работало быстрее, чем *++a = *++b; (три команды процессора).
P.S. В подавляющем большинстве случаев ни о каких "намного" речи нет.
Не всегда. В простых случаях компилятор его оптимизирует. А постфиксные часто удобнее для программиста.
Это разные операторы и работают они по разному т. е. каждый по своему, из за этого и скорость исполнения разной работы то же бывает разной.
>> намного быстрее ...
это наглая лож
У них цели разные,
как их можно вообще сравнивать?)))))