ネーム・スペースは、それ自体の内部、または明示的修飾を使用して外部で、自身のメンバーを定義できます。
以下に、ネーム・スペースが、内部的にメンバーを定義する例を示します。
namespace A { void b() { /* definition */ } }
ネーム・スペース A 内で、メンバー void b() が内部的に定義されます。
ネーム・スペースは、定義されようとしている名前に明示的修飾を使用して、 外部的にそのメンバーを定義することもできます。 定義されようとしているエンティティーは、ネーム・スペース内ですでに宣言されている必要があります。 定義は、宣言のネーム・スペースを囲むネーム・スペース内の、宣言のポイントの後に現れる必要があります。
ネーム・スペースが、外部的にメンバーを定義する例を以下に示します。
namespace A { namespace B { void f(); } void B::f() { /* defined outside of B */ } }