- Implementations of C++ contain a preprocessor capable of
conditional compilation and
file inclusion. A line whose first non-white space
token is the character '#' is considered to contain a preprocessor directive.
is independent of the rest of the C++ language. The effects of preprocessing directives persist to
the end of the translation unit.
- A preprocessing directive may be continued on the next line by placing a
backslash character at the end of the line (i.e. immediately preceding the end of line
character sequence). When continuing a line, the backslash and end of line
character sequence are deleted and the line following is concatenated to the end of
the current line. Such concatenations take place prior to the input stream
being parsed into tokens. A backslash may not occur as the last character of an
- A preprocessor token is a language token,
a file name or any single, non-white space
character that does not match another preprocessing token.