Я не читал эту книгу, поэтому могу только уйти от вашей цитаты.Я подозреваю, что он имеет в виду следующее:
Вместо записи:
array[complicated_expression] = array[complicated_expression] + something_else
(обратите внимание на две ссылки на один и тот же индекс массива)
выможно написать:
array[complicated_expression] += something_else
Это дает понять, что сложное выражение одинаково в "обеих ссылках".
Альтернативный способ сделать это - использовать временную переменную:
int index = complicated_expression;
array[index] = array[index] + something_else
Но это не так кратко.(Это более общий подход, поскольку вы можете использовать его для случаев, когда вы выполняете какую-либо операцию, в которой нет оператора X=
.)