我在考虑这样的情况:
if( A && B)
{
doSomething();
}
考虑到我使用的是C ++,首先评估什么? A
或B
?
而且,让我们首先评估A
,如果A
是false
,if
语句会先评估B
走出if
?
与大多数其他编程语言一样,comportement是否相同?
答案 0 :(得分:0)
&&
和||
通常作为短路运算符实现。如果A
为false
,则B
不需要进行评估,并且(在大多数语言中)不会。因此,A
将首先进行评估,并根据其值,B
可能会或可能不会被评估。