using namespace X;
using directiveと呼ばれ、クラスのスコープのみ名前空間と機能の範囲で表示されますが、することはできません。だからあなたがしようとしていることはC++では不可能です。あなたができるベストは、そのクラスの名前空間のスコープにusingディレクティブを書くことです。これは望ましくないかもしれません。二思想に
は、しかし、あなたの言葉を分析し、
は、C++クラスを持つと仮定します。そして、私のクラスの中でしか見ることができない の名前空間があります。そのために何をすべきか?
私は次のようなものをお勧めします。これはあなたが望むものではありません。
class A
{
public:
void Method1();
void Method2();
void Method3();
private:
class B
{
//public static functions here, instead of namespace-scope
// freestanding functions.
//these functions will be accessible from class A(and its friends, if any)
//because B is private to A
};
};
目に見えるとはどういう意味ですか?ネームスペースは、プライベート/パブリックのようなものではありません。 – KillianDS
1つのオプションはクラス*を名前空間に入れることです。もしそれがその名前空間にあまり依存しているのであれば、それはなぜ外にありますか? –
[なぜ "using"宣言をクラス宣言の中に入れられないのですか?](https://stackoverflow.com/questions/2134844/why-cant-i-put-a-using-declaration-inside -a-class-declaration) –