bash.im ithappens.me zadolba.li
5073

Экономим нервы и такты

Вот все говорят: женская логика, женская логика... Мол, неописуемое и непонятное явление. А если проявить сообразительность? Да ещё не простую, а нашу, айтишную? Поясню на примере.

Давеча договариваюсь по аське со знакомой о встрече.

— Как сделаем: я тебе позвоню или буду ждать от тебя эсемеску?
— Да, так сделаем.

Казалось бы, вот он, яркий пример этой самой женской логики. Вот какой вариант она имела ввиду? Я спросил — оказалось, тот, в котором я ей позвоню.

Теперь берём учебник по С++. В разделе «Логические операции» читаем:

Логические операции сокращённого вычисления:

— сокращённая конъюнкция (conditional-AND) &&;
— сокращённая дизъюнкция (conditional-OR) ||.

Правый операнд сокращённых операций вычисляется только в том случае, если от него зависит результат операции: если левый операнд конъюнкции имеет значение true или левый операнд дизъюнкции имеет значение false.

Рассуждаем. В описанном выше примере имеем операцию дизъюнкции, которая должна обязательно вернуть true (так как один из предложенных вариантов должен быть выбран). Ответ знакомой — это передаваемое значение операнда. Читаются выражения слева направо — значит, значение присваивается левому операнду. А если левый операнд дизъюнкции равен true, правый уже не рассматривается, что придаёт ответу однозначность.

Логично? Логично. Ничуть не сложнее, чем в компьютере. Так-то! Читайте мануалы, товарищи.