名前空間とは何でしょう?
広義の「名前空間」とは、項目をカプセル化するもののことです。
たとえば、たいていの OS はディレクトリでファイルをグループ化します。
この場合、ディレクトリがその中のファイルの名前空間として機能しています。
具体的に言うと、foo.txt というファイルは /home/greg と /home/other の両方に存在することが可能ですが、それらふたつの foo.txt を同じディレクトリに配置することはできません。
さらに、/home/greg ディレクトリの外から foo.txt にアクセスするには、ディレクトリ名をファイル名の前につけて /home/greg/foo.txt としなければなりません。
プログラミングの世界における名前空間も、この延長線上にあります。
名前空間を定義するには、namespaceキーワードの後に任意の空間名を記述します。
namespace 名前空間名;