A と B など、2 つの名前空間で同じクラス名を使用しています。異なる名前空間でクラスを宣言する際に、インクルード ガードを一意にする必要がありますか?
同じインクルード ガードを持ち、異なる名前空間を宣言する 2 つのファイル名 AFile.h (異なるディレクトリ内) が存在できないということですか?
//File 1:
#ifndef AFILE_H
#define AFILE_H
namespace A {
class CAFile {...
};
};
#endif
//File 2:
#ifndef AFILE_H
#define AFILE_H
namespace B {
class CAFile {...
};
};
#endif