我正在为一个学校的DirectX 11项目工作,并且在这样做时完全遵循了这本书。我一直在想,也许有些东西被标记为错误,但是我仔细检查了所有文件,所有类名都很好(我相信它们很好),并仔细检查了所有头文件的设置方式,一切都应该没问题,但我仍然可以错误输出:
1> BlankDemo.obj:错误LNK2019:未解析的外部符号“public:__thiscall DemoBase::DemoBase(void)”(?? 0DemoBase @@ QAE @ XZ)在函数“public:__thiscall BlankDemo::BlankDemo(void)”中引用( 0BlankDemo @@ QAE @ XZ)
1> BlankDemo.obj:错误LNK2019:未解析的外部符号“公共(public):虚拟__thiscall DemoBase::〜DemoBase(void)”(?? 1DemoBase @@ UAE @ XZ)在函数“公共(public):虚拟__thiscall BlankDemo::〜BlankDemo(无效)”(?? 1BlankDemo @@ UAE @ XZ)
1> main.obj:错误LNK2019:未解决的外部符号“public:void __thiscall DemoBase::Shutdown(void)”(?Shutdown @ DemoBase @@ QAEXXZ)在函数_wWinMain @ 16中引用
1> main.obj:错误LNK2019:未解析的外部符号“公共(public): bool(boolean) 型__thiscall DemoBase::Initialize(struct HINSTANCE__ *,struct HWND__ *)”(?Initialize @ DemoBase @@ QAE_NPAUHINSTANCE __ @@ PAUHWND __ @@@@ Z) _wWinMain @ 16
1> C:\ Users \ vaughn \ documents \ Visual Studio 2010 \ Projects \ BlankWindow \ Debug \ BlankWindow.exe:致命错误LNK1120:4个未解决的外部组件
我该如何解决?
最佳答案
显然,您尚未实现DemoBase
类中的少数方法(包括其构造函数和析构函数),或者尚未将实现文件包括在要编译或与程序链接的文件列表中。实施它们,然后确保已将源文件包含在项目中。