これが可能かどうかはわかりませんが、ネストされたネームスペースの異なるレベルに同じ名前のクラスが2つあります。 class深いクラスの友人。例:File1.hでネストされたネームスペースの異なるレベルの同じ名前のC++フレンドクラス
:File2.hで
namespace A
{
class Foo
{
//stuff
};
}
:
namespace A
{
namespace B
{
class Foo
{
friend class A::Foo; //Visual Studio says "Error: 'Foo' is not a member of 'A'"
};
}
}
これは可能ですか?もしそうなら、正しい構文は何ですか?
あなたが '' File2.h'でFile1.h'が含まれていましたか? – StoryTeller