「cpp/keyword/namespace」の版間の差分
提供: cppreference.com
細 (1版:Import from Dokuwiki) |
細 (r2.7.3) (ロボットによる 追加: en:cpp/keyword/namespace, it:cpp/keyword/namespace, ru:cpp/keyword/namespace) |
||
47行: | 47行: | ||
関連トピック: [[cpp/keyword/using | using]] | 関連トピック: [[cpp/keyword/using | using]] | ||
+ | |||
+ | |||
+ | |||
+ |
2012年5月4日 (金) 15:41時点における版
文法:
namespace 名前 { 宣言リスト; }
namespaceキーワードを使うと、新しいスコープを作成することができます。 名前はオプションで、省略した場合には無名の名前空間が作られます。 一度名前空間を作成すると、以下の例のように、明示して参照するか、あるいは usingキーワードを使用して参照することになります:
namespace CartoonNameSpace { int HomersAge; void incrementHomersAge() { HomersAge++; } } int main() { ... CartoonNameSpace::HomersAge = 39; CartoonNameSpace::incrementHomersAge(); cout << CartoonNameSpace::HomersAge << endl; ... }
無名の名前空間
名前のない名前空間は、無名の名前空間と呼ばれます。それぞれの名前空間は翻訳単位ごとにユニークな名前が設定されます。 無名の名前空間に対しては usingキーワードを適用することはできませんが、その変わり、usingキーワードがすでに適用されているかのように動作します。
namespace { 宣言リスト; }
名前空間の別名
名前空間に対して、新しい名前(別名)を付けたり、ネストした名前空間を作ることもできます。
namespace identifier = namespace-specifier;
関連トピック: using