Здравствуйте, Vovka_R, Вы писали:
V_R>Здравствуйте, remark, Вы писали:
R>>Казус в том, что это не совсем так. Можно поглядеть например здесь.
V_R>Бррррррррррррррррррррр. Стоп. Чего-то я не понял!!!! Ссылку посмотрел. Клево!!! Но не понятно. Можно это прокомментировать. Я понял что для каждого компилятора свой набор дефайнов идет, но как это отражается на мой вопрос. Т.е. Вы хотите сказать, что в строчке
V_R>V_R>if( f1() || f2() )
V_R>
V_R>если истиной будет первая функция, то вторая тоже может вызваться??? А почему тогда так??? А если не так, то как???? Объясните пожалуйста.
Не волнуйся

Науке неизвестны компиляторы, которые бы не выполняли требования о порядке вычисления выражений в operator || (если он не перегружен пользователем, конечно).
Ссылка просто показывает, что, к сожалению, многие компиляторы не в полной мере соответствуют стандарту, и разработчикам кросс-платформенных библиотек приходится прилагать много усилий, чтобы все это несоответствия обойти.
Но к твоей проблеме это не относится