目标 C 条件语句评估



可能的重复项:
C/C++ 中是否强制要求短路布尔运算符?和评估顺序?

在研究iOS问题时,我发现了以下答案:如何判断UIViewController的视图是否可见

答案的细节并不重要,但重要的是它基本上是说,如果你有一个看起来像下面的条件语句......

if(X && Y)
{
    //do stuff here
}

如果 X 为假,则永远不会评估 Y。 这是真的吗? 可以确定编译器不会对其进行优化以if(Y && X)吗?

如果 X 为 false,它将返回 false,并且不会计算 Y。这是一种优化。

最新更新