1. ホーム
  2. c++

[解決済み】C++で名前空間を正しく使うには?

2022-04-04 22:03:01

質問

私はJava出身で、名前空間ではなくパッケージが使用されています。私は、一緒に動作して完全なオブジェクトを形成するクラスをパッケージに入れ、後でそのパッケージからそれらを再利用することに慣れています。しかし、今はC++で仕事をしています。

C++で名前空間はどのように使うのですか?アプリケーション全体に対して1つの名前空間を作るのか、それとも主要なコンポーネントに対して名前空間を作るのか?その場合、他のネームスペースにあるクラスからどのようにオブジェクトを作成するのでしょうか?

どのように解決するのですか?

名前空間は、基本的にはパッケージです。こんな風に使うことができます。

namespace MyNamespace
{
  class MyClass
  {
  };
}

次にコードで。

MyNamespace::MyClass* pClass = new MyNamespace::MyClass();

また、常に特定の名前空間を使用したい場合は、次のようにします。

using namespace MyNamespace;

MyClass* pClass = new MyClass();

編集する 以下は ベルンハルドルシュ 私は、quot;using namespace x"構文をまったく使用しない傾向にあり、通常はオブジェクトをインスタンス化するときに明示的に名前空間を指定します(つまり、最初に示した例)。

また、ご質問のように 以下 を使えば、好きなだけ名前空間を使うことができます。