关键字 (C++)

关键字是具有特殊意义的预定义保留标识符。 它们不能用作程序中的标识符。 Microsoft C++ 保留了下列关键字。 为 c + +/CX 和 c + +/CLI 指定了前导下划线和名称的名称是 Microsoft 扩展。

标准 c + + 关键字

constinitc
continue
co_awaitc
co_returnc
co_yieldc
decltype
default
delete
do
double
dynamic_cast
else
enum
explicit
exportc
extern
false
float
for
friend
goto
if
inline

Microsoft 特定的 __asm 关键字替代 c + + asm 语法。 asm 保留以与其他 c + + 实现兼容,但未实现。 用于 __asm x86 目标上的内联程序集。 对于其他目标,Microsoft c + + 不支持内联程序集。

b /permissive-) 指定或 /Za ( 禁用语言扩展时,扩展运算符同义词为关键字。 启用 Microsoft 扩展后,它们不是关键字。

如果 /std:c++latest 指定,则支持 c。

特定于 Microsoft 的 c + + 关键字

在 c + + 中,包含两个连续下划线的标识符保留用于编译器实现。 Microsoft 约定是在 Microsoft 特定的关键字之前加上双下划线。 这些单词不能用作标识符名称。

默认情况下将启用 Microsoft 扩展。 若要确保您的程序是完全可移植的,可通过在 /permissive- 编译期间指定或 /Za ( 禁用语言扩展) 选项来禁用 Microsoft 扩展。 这些选项禁用一些 Microsoft 特定的关键字。

启用 Microsoft 扩展后,你可以在程序中使用 Microsoft 特定关键字。 为了符合 ANSI,这些关键字的前面有一条双下划线。 为了向后兼容,支持多个双下划线关键字的单下划线版本。 __cdecl 关键字在没有前导下划线的情况中可用。

__asm 关键字替代 c + + asm 语法。 asm 保留以与其他 c + + 实现兼容,但未实现。 使用 __asm

__based 关键字对32位和64位目标编译的使用有限。

d 内部函数在事件处理中使用。

e 为了与以前的版本向后兼容,在默认) (启用 Microsoft 扩展时,可以使用两个前导下划线和单个前导下划线。

__Declspec 修饰符中的 Microsoft 关键字

这些标识符是修饰符的扩展特性 __declspec 。 它们被视为在该上下文中的关键字。

C + +/CLI 和 c + +/CX 关键字

__abstractf
__boxf
__delegatef
__gcf
__identifier
__nogcf
__noop
__pinf
__propertyf
__sealedf

f仅适用于Managed Extensions for C++。 此语法现已弃用。 有关更多信息,请参见 Component Extensions for Runtime Platforms

g 适用于 C++/CLI。

请参阅

词法约定
C++ 内置运算符、优先级和关联性