ここで名前空間について読みましたが、これに対する答えが見つかりませんでした..
例えば:
// example1.cpp
#include "example1.h"
#include <set>
namespace MyNamespace
{
using std::set;
void f() {};
}
// example2.cpp
#include "example2.h"
#include <set>
using std::set;
namespace MyNamespace
{
void f() {};
}
上記の両方の例は、いくつかの x? 内にあります。2 番目の例の方が優れていると感じていますが、他の翻訳単位でnamespace MyNamespace
インポートされた名前が表示されないため、その理由がわかりません。では、 Mynamespace の外部と内部のどちらでstd::set
呼び出すかを気にする必要はありません。using std::set
説明できますか?また、どの時点std::set
でにインポートされMynamespace
ますか? どうやってそれを知ることができますか?
編集:
上記の例は同じプロジェクトの cpp ファイルであると仮定します。MyNamespace の内部または外部に std::set をインポートすることは同等です。他の cpp ファイル (同じ名前空間にある) には名前セットが表示されないためです (たとえあなたが入力しても名前空間 MyNamespace を使用しても効果はありませんset を使用する場合は、各翻訳単位で std::set を使用して入力する必要があります。#include<set>