作者:
wtchen (沒有存在感的人)
2016-11-05 18:56:05為了更新C++14/C++17對於這方面的更改查了一下:
http://en.cppreference.com/w/cpp/language/eval_order
C++17開始:
f(++i, ++i); // undefined behavior until C++17
f(i = -1, i = -1); // undefined behavior until C++17
cout << i << i++; // undefined behavior until C++17
a[i] = i++; // undefined behavior until C++17
看了一下C++17新增的部份有一大堆,結果例子只有這幾個。
有人可以補充的嗎?
作者: yesIamking (hello) 2016-11-05 21:04:00
statement會根據新規則,使得求值順序被指定,例如a=a++是a++先,然後才是a;a[i++]=++i就是++i,a,i++