Re: [问题] 请问关于a=a++的问题

楼主: 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新增的部份有一大堆,结果例子只有这几个。
有人可以补充的吗?
楼主: wtchen (没有存在感的人)   2016-11-05 18:57:00
看了真觉得C++真的该跟C分家,愈管愈多。
作者: testPtt (测试)   2016-11-05 19:11:00
包袱太多了 不如直接改全新的不再支援旧的
作者: yesIamking (hello)   2016-11-05 21:04:00
statement会根据新规则,使得求值顺序被指定,例如a=a++是a++先,然后才是a;a[i++]=++i就是++i,a,i++
作者: deangood01 (跨斯欧鹅)   2016-11-06 19:20:00
其实C++11就应该要开专版了 整个背后的思维都不太一样了
作者: Caesar08 (Caesar)   2016-11-06 19:48:00
版主有兴趣可以参考p0145r2。然后C也有这问题
楼主: wtchen (没有存在感的人)   2016-11-06 20:44:00
感谢,C有多限制sequence point吗?没看到....

Links booklink

Contact Us: admin [ a t ] ucptt.com