cpp/keyword

This is a list of reserved keywords in C++. Since they are used by the language, these keywords are not available for re-definition or overloading.

Note that, , , , , , , , , , and (along with the digraphs , , , , , and ) provide an alternative way to represent standard tokens.
 * — meaning changed or new meaning added in C++11.
 * — meaning changed in C++17.
 * — meaning changed or new meaning added in C++20.
 * — new meaning added in C++23.

In addition to keywords, there are identifiers with special meaning, which may be used as names of objects or functions, but have special meaning in certain contexts.

Also, all that contain a double underscore  in any position and each identifier that begins with an underscore followed by an uppercase letter is always reserved and all identifiers that begin with an underscore are reserved for use as names in the global namespace. See for more details.

The namespace is used to place names of the standard C++ library. See Extending namespace std for the rules about adding names to it.

The following tokens are recognized by the when in context of a preprocessor directive:

The following tokens are recognized by the outside the context of a preprocessor directive: