Большинство авторов компиляторов на самом деле настолько ленивы, что никогда не реализуют инструкцию приращения в своей промежуточной форме. Вместо этого у них есть инструкция по добавлению, и этот вид оптимизации остается на заднем плане.

ал, что многие разработчики используют x + = 1 вместо x ++ для ясности. Я понимаю, что x ++ может быть неоднозначным для новых разработчиков и что x + = 1 всегда более понятен, но есть ли разница в эффективности между ними?

Пример использования для цикла:

for(x = 0; x < 1000; x += 1) противfor(x = 0; x < 1000; x++)

Я понимаю, что обычно это не так уж и сложно, но если я неоднократно вызываю функцию, которая выполняет такой цикл, это может привести к долгосрочным последствиям.

Другой пример:

while(x < 1000) {
    someArray[x];
    x += 1;
}

против

while(x < 1000) {
    someArray[x++];
}

Можно ли заменить x ++ на x + = 1 без потери производительности? Я особенно обеспокоен вторым примером, потому что я использую две строки вместо одной.

Как насчет увеличения элемента в массиве? БудетsomeArray[i]++ быть быстрее, чем делатьsomeArray[i] += 1 когда сделано в большой петле?

Ответы на вопрос(5)

Ваш ответ на вопрос