私はそれ以下が放出EXEと単体テストexeファイルの両方で使用されるヘッダ「myHeaderFile.h」ファイルが見える有します。C++ヘッダファイル封入エラー
#ifndef MYHEADERFILE_H
#define MYHEADERFILE_H
namespace myname1
{
namespace myname2
{
class A
{
...
};
#ifdef MYTESTCLASS
class TestABase
{
...
}
#endif
}
}
#endif
私はとエラーを取得していますコンパイルすると、私は
#include "myUnitTest.h"
// Definition stuff.
を以下しているmyUnitTest.cppで今
#ifndef MYUNITEST_H
#define MYUNITTEST_H
#ifndef MYTESTCLASS
#define MYTESTCLASS 1
#endif
#include "myHeaderFile.h"
class TestClass : public myname1::myname2::TestABase
{
...
};
#endif
以下のように今、私たちはmyUnitTest.hファイルファイルunittestのファイルを持っていますエラーC2039:TestABase:myname1のメンバーではない:: myname2' myUnitTest.h(31):エラーC2504:TestABase:基本クラス未定義
は何上記のエラーを引き起こしていますか?上記のエラーを解決するのに手伝ってください。注:myHeaderFile.hはライブラリから来ているので、このヘッダファイルを変更することはできません。
ありがとうございます!
ユライBlahoによって示され、今では微細なコンパイルのようにコードスニペットは、変更されました。コードスニペットを修正してソリューションを追加する必要はありませんが、代わりに、回答を改善することで問題を解決する必要があります –