Yes, this is valid C++ :
if (false or (true and not false)) ...
Among others such as bitand
and xor
. In C, they used to be macros, but now they are keywords ! You can even overload them ! Then why would someone ever teach or write something like :
if (false || (true && !(false))) ...
Why is nobody using them ?