可能重复:
Is short-circuiting boolean operators mandated in C/C++? And evaluation order?
在研究iOS问题时,我找到了以下答案:How to tell if UIViewController's view is visible
答案的具体内容并不重要,但重要的是它基本上说如果你的条件陈述看起来如下......
if(X && Y)
{
//do stuff here
}
如果X为假,则永远不会评估Y.这是真的?是否可以确定编译器不会将其优化为if(Y && X)
?
答案 0 :(得分:6)
如果X为假,它将返回false并且不会评估Y.这是一个优化。