C++ keywords
这是 C++ 中的保留关键字列表。由于这些关键字已被语言使用,因此无法重新定义或重载。 作为例外,在 属性 中(不包括属性参数列表)不视作保留关键字。 (since C++11)
- (1) — 表示在 C++11 中含义发生变更或新增的含义。
- (2) — 表示在 C++14 中新增的含义。
- (3) — 表示在 C++17 中含义发生变更或新增的含义。
- (4) — 表示在 C++20 中含义发生变更或新增的含义。
- (5) — 表示在 C++23 中新增的含义。
注意:
and
、
bitor
、
or
、
xor
、
compl
、
bitand
、
and_eq
、
or_eq
、
xor_eq
、
not
和
not_eq
(以及双字符组:
<
%
、
%
>
、
<
:
、
:
>
、
%
:
、
%
:
%
:
和三字符组:
??
<
、
??
>
、
??
(
、
??
(
、
??
=
、
??
/
、
??
'
、
??
!
、
??
-
(C++17 前)
)提供了一种
表示标准运算符的替代方式
。
这些关键字在属性中(除属性参数列表外)也被视为保留字,但部分实现会将其与其他关键字同等处理。
(C++11 起)
除了关键字之外,还存在 具有特殊含义的标识符 ,这些标识符可用作对象或函数的名称,但在特定语境下具有特殊含义。
|
|
此外,所有在任何位置包含双下划线
__
的
标识符
,以及每个以下划线开头后跟大写字母的标识符始终被保留,且所有以下划线开头的标识符均保留用于全局命名空间中的名称。更多细节请参阅
标识符
说明。
命名空间
std
用于存放标准 C++ 库的名称。关于向其添加名称的规则,请参阅
扩展命名空间 std
。
|
名称
|
(since C++11) |
以下标记在预处理器指令上下文中会被 预处理器 识别:
|
defined
|
以下标记在预处理器指令 之外 的上下文中可被 预处理器 识别:
|
_Pragma (C++11) |
参见
|
C 文档
关于
keywords
|