логическая операция над методами [дубликат]

Возможный дубликат:
Продолжает ли компилятор вычислять выражение, в котором все должны быть истинными, если первое ложно?
Разница между нетерпеливой операцией и операцией короткого замыкания? (| versu || and & versu &&)

Итак, вот мой вопрос. Если у меня есть это

if (Foo() && Bar())
    DoStuff();

, если Foo() возвращает false, будет ли он по-прежнему работать через Bar()? или мне нужно иметь

if (Foo())
    if (Bar())
        DoStuff();

, чтобы гарантировать что он проходит только минимальное количество, необходимое перед «отказом»?

0
задан Community 23 May 2017 в 10:09
поделиться