ファイル/グローバル・スコープ

C のみ ID の宣言が、 すべてのブロックの外側で現れる場合は、名前にはファイル・スコープ があります。ファイル・スコープと内部リンケージ付きの名前は、 名前が宣言された位置から変換単位の終わりまで可視になります。

開始 (C++ のみ) グローバル・スコープ またはグローバル名前空間スコープ は、オブジェクト、関数、 型、およびテンプレートを定義できる、プログラムの最外部の名前空間スコープです。 ID の宣言が、ブロック、名前空間、およびクラスすべての外側に現れ る場合、その名前はグローバル名前空間スコープ を持ちます。

グローバル名前空間スコープと内部リンケージ付きの名前は、 名前が宣言された位置から変換単位の終わりまで可視になります。

また、グローバル (名前空間) スコープ付きの名前は、 グローバル変数を初期化するためにアクセス可能です。その名前が extern で宣言される場合は、 リンク時に、リンク中のすべてのオブジェクト・ファイルで可視になります。

ユーザー定義の名前空間は、名前空間定義を使用してグローバル・ スコープ内にネストすることができ、個々のユーザー定義名前空間は、グロー バル・スコープとは別の固有のスコープです。C++ のみの終わり