C++ のキーワード

キーワードは特別な意味を持つ定義済みの予約済みの識別子です。これらは、プログラム上に識別子として使うことはできません。次のキーワードはMicrosoft C++のために予約されています。先頭にアンダースコアがの名前はMicrosoftの拡張機能です。

__abstract2

__alignof 演算子

__asm

__assume

__based

__box2

__cdecl

__declspec

__delegate2

__event

__except

__fastcall

__finally

__forceinline

__gc2

__hook3

__identifier

__if_exists

__if_not_exists

__inline

__int16

__int32

__int64

__int8

__interface

__leave

__m128

__m128d

__m128i

__m64

__multiple_inheritance

__nogc2

__noop

__pin2

__property2

__raise

__sealed2

__single_inheritance

__stdcall

__super

__thiscall

__try/__except__try/__finally

__try_cast2

__unaligned

__unhook3

__uuidof

__value2

__virtual_inheritance

__w64

__wchar_t、wchar_t

abstract

配列

auto

bool

break

case

catch

char

クラス

const

const_cast

continue

decltype

default

delegate

delete

使用されていない1

dllexport1

dllimport1

do

double

dynamic_cast

else

enum

列挙型のクラス

列挙型の構造体

event

explicit

extern

false

finally

float

for

各には、

friend

friend_as

gcnew

汎用

goto

if

initonly

インライン

int

インターフェイス クラス

インターフェイスの構造体

interior_ptr

literal

long

変更

生の1

namespace

new

new

noinline1

noreturn1

nothrow1

novtable1

です。

operator

private

property

プロパティ1

protected

public

refクラス

refの構造体

レジスタ

reinterpret_cast

return

safecast

sealed

selectany1

short

signed

sizeof

static

static_assert

ください。

struct

switch

template

this

スレッド1

throw

true

try

typedef

typeid

typeid

型名

union

unsigned

使用 の宣言、使用 ディレクティブ

uuid1

値クラス

値の構造体

virtual

void

volatile

while

__declspec のキーワードの1拡張属性。

2ではC++マネージのみに適用されます。この構文は使用されなくなりました。

イベントの処理に使用する3組み込み関数。

詳細については、「言語機能は、CLR を対象とする」を参照してください。

Microsoft 固有の仕様 →

Microsoft C++では、2種類の先頭にアンダースコアを使用して識別子は、コンパイラの実装のために予約されています。したがって、Microsoftの規則はアンダースコアとMicrosoft固有のキーワードの前にキーワードを指定します。これらの単語を識別子名として使用することはできません。

Microsoft 拡張機能は既定で有効になっています。プログラムが完全に移植性のあるであることを確認するには、/Za のANSI互換のコマンド ライン オプション (ANSI互換のコンパイル) を指定すると、コンパイル時のMicrosoft拡張機能を無効にできます。これを行うと、Microsoft 固有キーワードが無効になります。

Microsoft拡張機能を有効にすると、プログラムでMicrosoft固有のキーワードを使用できます。ANSI準拠では、これらのキーワードはアンダースコアで始まります。下位互換性のために、__exceptを除くすべてのDouble下線付きのキーワードの単一のアンダースコアのバージョン、__finally、__leaveと __try がサポートされます。また、__cdecl には、先頭にアンダースコアなしで使用できます。

__asm のキーワードはC++ asm の構文を置き換えます。asm は、他のC++の実装で互換性のために予約します。ただし、実装されていません。__asm を使用してください。

__based キーワードには、32 ビットおよび 64 ビット ターゲット コンパイルに関する使用制限があります。

参照

関連項目

構文の規則

C++ の演算子