extern
カテゴリ
構文
extern <data definition> ; [extern] <function prototype> ;
説明
修飾子 extern を使用すると、変数の実際の記憶域と初期値、または関数の本体が別のソース コード モジュールに定義されていることを示します。 extern として宣言された関数は、static として再定義されない限り、プログラム内のすべてのソース ファイルで可視になります。
関数プロトタイプに対しては、キーワード extern は任意指定です。
C++ プログラムで関数名がマングリングされないようにするには、extern "C" を使用します。
また、extern テンプレートではトランスレーション ユニットでインスタンス化されないテンプレートを定義できます。 extern テンプレートを使用すると、コンパイル時間が短縮し、コンパイル モジュールのサイズが小さくなります。 この extern テンプレート 機能は新しい C++11 標準の一部です。