编译代码时,我遇到了未解决的外部符号错误。我正在使用第三方库。所以在编译代码时使用第三方库命名空间。
std_uss.obj:错误LNK2019:函数“
__declspec(dllimport) void __cdecl os_std::os_throw_length_error(void)
”中引用的未解析的外部符号“__imp_?os_throw_length_error@os_std@@YAXXZ
”(private: char * __thiscall os_std::basic_string<char,class os_std::char_traits_char,class os_std::allocator<char> >::allocate(unsigned int)
)(?allocate@?$basic_string@DVchar_traits_char@os_std@@V?$allocator@D@2@@os_std@@AAEPADI@Z
)
我在第三部分库的一个文件中找到了os_throw_length_error函数,但在代码中没有找到类似于:: allocator的任何函数。我没有使用标准的std命名空间,因为我希望编译器使用第三方命名空间。
如果我使用标准的using namespace std
,那么我的编译成功,但是像字符串这样的定义被引用到visual studio字符串而不是第三方字符串函数。
答案 0 :(得分:0)
您需要将第三方DLL的导入库(.lib文件)添加到项目中。在Visual Studio中,它将位于项目属性中的“链接器/输入/附加依赖”
下