【发布时间】:2020-05-20 20:09:04
【问题描述】:
我想知道是否短路评估
long param = 0;
if ( functAWithSideEffects(¶m) || funcBWithSideEffects(¶m) )
值得信赖。例如,如果 funcAWithSideEffects 返回 true,编译器会评估 funcBWithSideEffects 吗?短路评估是语言特性还是编译器实现细节?
【问题讨论】:
-
通过阅读 C++11 标准进行检查,实际上是 n3337
-
我确定它被埋在某个地方!
标签: gcc visual-c++ g++