Tag: 编译器 构建

编译器和C ++中的评估顺序

好的,我知道标准规定C ++实现可以选择函数的哪个顺序参数进行评估,但是在实际上会影响程序的情况下,是否有实际的“利用”这个实现呢? 经典示例: int i = 0; foo(i++, i++); 注意:我不想找人来告诉我,评估顺序是不可靠的,我很清楚这一点。 我只关心编译器是否确实按照从左到右的顺序进行评估,因为我的猜测是如果他们做了很多写得不好的代码就会中断(正确的,但他们仍然可能会抱怨)。