什么是未定义的参考/未解决的外部符号错误?什么是常见原因以及如何修复/预防它们?
随意编辑/添加您自己的.
c++ c++-faq linker-errors unresolved-external undefined-reference
我在VC++ 2010中创建控制台应用程序,并向其添加以下代码:
#include <d3d10.h>
#include <d3dx10.h>
#include <DxErr.h>
#pragma comment(lib, "d3d10.lib")
#pragma comment(lib, "d3dx10.lib")
#pragma comment(lib, "dxgi.lib")
#pragma comment(lib, "dxerr.lib")
int _tmain(int argc, _TCHAR* argv[])
{
IDXGIFactory* pDXGIFactory;
CreateDXGIFactory(IID_IDXGIFactory, ( void** )&pDXGIFactory);
return 0;
}
构建此项目,我有链接器错误:错误LNK2001:未解析的外部符号_IID_IDXGIFactory
现在我创建具有MFC支持的控制台应用程序,并添加相同的代码.构建成功.第一种情况有什么问题?为什么MFC项目成功构建,非MFC项目失败?