我有一个用vc10(VS2010)编译的第三方DLL。 它导出以下功能:
bool myDLL_EXPORTS_API myFunction(std::vector<int>::const_iterator c)
{
return true;
}
我的exe使用此DLL。我正在尝试使用vc11(vs2012)编译我的exe。
#include "stdafx.h"
#include <vector>
#include "myDll_VC10\myDll_VC10.h"
int _tmain(int argc, _TCHAR* argv[])
{
std::vector<int>::const_iterator c;
myFunction(c);
return 0;
}
我收到以下链接器错误:
1&gt; usingDLLvc10.obj:错误LNK2019:未解析的外部符号“__declspec(dllimport)bool __cdecl&gt; myFunction(类std :: _ Vector_const_iterator&gt;&gt;)”(_ imp ?myFunction @ @YA_NV?$ _ Vector_const_iterator @ V?$ _ Vector_val @ U?&gt; $ _ Simple_types @H @ std @@@ std @@@ std @@@ Z)在函数_wmain中引用 1&gt; C:\ Work \ Training \ vectorReproduceBug \ usingDLLvc10 \ Debug \ usingDLLvc10.exe:致命错误LNK1120:1&gt;未解析的外部
注意:如果我的exe用vc10(VS2010)编译,则此代码编译并链接。 如果没有使用vc11(VS2012)编译的第三方库,如何修复此链接器错误?
答案 0 :(得分:4)