本节从以下方面描述特定于 Microsoft 的 C++ 扩展:
基寻址,用一个指针充当其他指针可进行偏移的基准的做法
使用 __declspec 关键字声明的扩展存储类特性
__w64 关键字
Microsoft 特定关键字
许多特定于 Microsoft 的关键字可用于修改声明符以构成派生类型。 有关声明符的详细信息,请参阅声明符。
关键字 | 含义 | 是否已用于构成派生类型? |
---|---|---|
__based | 后跟的名称将 32 位偏移量声明为包含在声明中的 32 位基。 | 是 |
__cdecl | 后面的名称遵循 C 语言的命名和调用约定。 | 是 |
__declspec | 紧随其后的名称指定 Microsoft 特定的存储类属性。 | 否 |
__fastcall | 后续的名称用于声明一个函数,该函数在可用时使用寄存器进行自变量传递,而不是使用堆栈。 | 是 |
__restrict | 类似于 __declspec(restrict),但用于变量。 | 否 |
__stdcall | 后跟的名称指定遵循标准调用约定的函数。 | 是 |
__w64 | 将数据类型标记为 64 位编译器上较大数据类型。 | 否 |
__unaligned | 指定指向类型或其他数据的指针未对齐。 | 否 |
__vectorcall | 紧随其后的名称声明了一个函数,该函数在可能的情况下使用寄存器(包括 SSE 寄存器)来传递参数,而不是使用堆栈。 | 是 |