作者wtchen (沒有存在感的人)
看板C_and_CPP
標題Re: [問題] 請問關於a=a++的問題
時間Sat Nov 5 18:56:05 2016
為了更新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新增的部份有一大堆,結果例子只有這幾個。
有人可以補充的嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 90.41.211.206
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1478343368.A.E55.html
1F:→ wtchen: 看了真覺得C++真的該跟C分家,愈管愈多。 11/05 18:57
2F:→ testPtt: 包袱太多了 不如直接改全新的不再支援舊的 11/05 19:11
3F:→ yesIamking: statement會根據新規則,使得求值順序被指定,例如a=a 11/05 21:04
4F:→ yesIamking: ++是a++先,然後才是a;a[i++]=++i就是++i,a,i++ 11/05 21:04
5F:推 deangood01: 其實C++11就應該要開專版了 整個背後的思維都不太一 11/06 19:20
6F:→ deangood01: 樣了 11/06 19:20
7F:→ Caesar08: 版主有興趣可以參考p0145r2。然後C也有這問題 11/06 19:48
8F:→ wtchen: 感謝,C有多限制sequence point嗎?沒看到.... 11/06 20:44