![]() |
Модификация объекта | ||
Если вы модифицируете объект или переменную, то не совершайте больше никаких модификаций и вообще больше не обращайтесь к объекту или переменной в пределах этого выражения. Скорее всего, повторное обращение приведет к undefined behaviour. |
0 1 2 3 4 5 6 7 8 | int main() { int array[10] = {0}; int n = 0; n = array[n++]; // Когда произойдет инкремент? // До присваивания, или после? return 0; } |
Существует довольно много ситуаций, в которых не существует четких требований относительно порядка действий в пределах одного выражения. Если вы модифицировали объект, то оставьте его в покое до окончания выражения. |
|
Статистика |
|