Может кто-нибудь объяснить этот пример короткого замыкания оператора запятой в C ++?
bIsTRUE = true, false, true;
bIsFALSE = (true, false), true;
bIsAlsoTRUE = ((true, false), true);
Почему вторая версия выполняет короткое замыкание и возвращает false (по крайней мере, в MSVC ++) и другие две версии не возвращают, но возвращают true ?