extern

提供: RAD Studio
移動先: 案内検索

キーワード(アルファベット順):インデックス への移動


カテゴリ

記憶クラス指定子(C++)

構文

extern <data definition> ;
[extern] <function prototype> ;

説明

修飾子 extern を使用すると、変数の実際の記憶域と初期値、または関数の本体が別のソース コード モジュールに定義されていることを示します。 extern として宣言された関数は、static として再定義されない限り、プログラム内のすべてのソース ファイルで可視になります。

関数プロトタイプに対しては、キーワード extern は任意指定です。

C++ プログラムで関数名がマングリングされないようにするには、extern "C" を使用します。

また、extern テンプレートではトランスレーション ユニットでインスタンス化されないテンプレートを定義できます。 extern テンプレートを使用すると、コンパイル時間が短縮し、コンパイル モジュールのサイズが小さくなります。 この extern テンプレート 機能は新しい C++11 標準の一部です。