C++关键字
关键字是指其含义已由编译器预先定义的词语。这些关键字不能用作标识符。请注意,关键字是保留字和预定义标识符的集合。预定义标识符是由编译器定义的标识符,但其含义可以由用户更改。
例如,您可以在主函数内声明一个名为main的变量,对其进行初始化,然后打印其值(但仅这样做是为了验证您可以这样做!)。另一方面,您不能对名为else的变量这样做。区别在于else是保留字,而main“仅仅”是预定义标识符。
C++共有95个保留字。C++的保留字可以方便地分为几组。在第一组中,我们列出了那些也在C编程语言中出现并被带入C++的保留字。共有32个这样的保留字。
另外还有30个保留字在C中不存在,因此是C++编程语言的新增内容。
有11个C++保留字在使用标准ASCII字符集时并非必不可少,但它们已被添加以提供一些C++运算符的可读替代方案,并方便使用缺少C++所需字符的字符集进行编程。
以下是所有这些保留字的列表:
alignas (自C++11起) | double | reinterpret_cast |
alignof (自C++11起) | dynamic_cast | requires (自C++20起) |
and | else | return |
and_eq | enum | short |
asm | explicit | signed |
atomic_cancel (TM TS) | export(1) | sizeof(1) |
atomic_commit (TM TS) | extern(1) | static |
atomic_noexcept (TM TS) | false | static_assert (自C++11起) |
auto(1) | float | static_cast |
bitand | for | struct(1) |
bitor | friend | switch |
bool | goto | synchronized (TM TS) |
break | if | template |
case | import (modules TS) | this |
catch | inline(1) | thread_local (自C++11起) |
char | int | throw |
char16_t (自C++11起) | long | true |
char32_t (自C++11起) | module (modules TS) | try |
class(1) | mutable(1) | typedef |
compl | namespace | typeid |
concept (自C++20起) | new | typename |
const | noexcept (自C++11起) | union |
constexpr (自C++11起) | not | unsigned |
const_cast | not_eq | using(1) |
continue | nullptr (自C++11起) | virtual |
co_await (coroutines TS) | operator | void |
co_return (coroutines TS) | or | volatile |
co_yield (coroutines TS) | or_eq | wchar_t |
decltype (自C++11起) | private | while |
default(1) | protected | xor |
delete(1) | public | xor_eq |
do | register(2) |
广告