The <ciso646>
header (from the C standard <iso646.h>
header) does nothing in C++.
The C header defines a small number of macros, such as and
for &&
, but these macros are all reserved
keywords in C++. The <ciso646>
header exists only for the sake of completeness: every header in the C
standard has an equivalent in C++.
Not all C++ compilers correctly implement the alternative tokens
such as and
. These compilers might
use <ciso646>
to declare these
keywords as macros. For maximum portability to these nonconforming
compilers, include the <ciso646>
header when you want to use
any alternative token keywords. See Chapter 1 for more information about the
alternative tokens.