1
我在想這樣的情況:秩序邏輯運算和結果的執行
if(A && B)
{
doSomething();
}
考慮我使用C++,什麼是第一次評估? A
或B
?
而且,讓我們想象A
首先計算,如果A
是false
,將if
聲明之前嘗試走出去if
的評價B
?
其他編程語言的編碼是否相同?
我在想這樣的情況:秩序邏輯運算和結果的執行
if(A && B)
{
doSomething();
}
考慮我使用C++,什麼是第一次評估? A
或B
?
而且,讓我們想象A
首先計算,如果A
是false
,將if
聲明之前嘗試走出去if
的評價B
?
其他編程語言的編碼是否相同?
&&
和||
通常被實現爲短路運營商。如果A
是false
,B
不需要進行評估,並且(大多數語言)不會。所以A
將首先評估,並根據其值,B
可能會或可能不會被評估。
非常感謝! – Karalix