Мне хорошо известно, что в С++
int someValue = i++;
array[i++] = otherValue;
имеет различный эффект по сравнению с
int someValue = ++i;
array[++i] = otherValue;
но каждый раз я вижу инструкции с приращением префикса для for-loops или просто по своему усмотрению:
for( int i = 0; i < count; ++i ) {
//do stuff
}
или
for( int i = 0; i < count; ) {
//do some stuff;
if( condition ) {
++i;
} else {
i += 4;
}
}
В последних двух случаях ++i
выглядит как попытка создать смарт-код. Я что-то наблюдаю? Есть ли причина использовать ++i
вместо i++
в последних двух случаях?