没有序列点的C++ 11?

yes*_*aaj 16 c++ deprecated sequence-points c++11

维基百科说在C++ 11中不推荐使用序列点.那是什么意思?这是否意味着由序列点引起的未定义行为没有影响?

J. *_*eja 9

不推荐使用术语"序列点"以提供更清楚的解释.C++语言不应该改变.

您可以在此处找到更多信息


sup*_*cat 9

术语"序列点"的一个主要问题是它提出了一种从未存在的绝对测序.考虑表达式a = (b(),c()) + d();b()和之间存在一个序列点c(),但这并不意味着其他所有内容都可以被描述为明显在之前c()或之后b().这将是可能的b(),c()以及d(),要在订单evaludated bcd,bdcdbc."序列"点术语并没有真正说清楚,但更新的术语确实如此.


Jer*_*fin 7

短语"序列点"已被弃用,有利于更明确的措辞,如"之前排序".序列点很难理解.添加多线程使得他们几乎不可能处理任何人,​​所以他们(至少大部分)被淘汰以支持其他措辞.