使用wofstream时C ++未解析的外部符号

时间:2013-10-29 09:02:43

标签: c++ linker symbols unresolved-external wofstream

我正在编译并链接批处理文件中的源代码,而我现在导入的库是MSVCRT.LIB Kernel32.lib User32.lib
代码有效,直到我加入string iostreamfstream并创建一些wofstream个对象。那时链接器向我显示了大量未解析的符号,其中包括:

std::_BADOFF
static class std::locale::id std::codecvt
std::_Xout_of_range
std::_Fiopen
std::basic_streambuf
std::char_traits
std::basic_ios
std::locale::id::operator unsigned _int64

所以我想知道我可能缺少哪些库。在链接器中,我指定了/nodefaultlib选项,因此我可以决定使用哪些库,但是现在我遇到了这个问题,无法找到这些标准函数的库。

1 个答案:

答案 0 :(得分:1)

简短:MSVCPRT.LIB

这些符号在C ++运行时库中定义。虽然你确实链接了MSVCRT.lib(注意没有字母P),但这只是C,而不是C ++运行时。

这是MSDN页面,您可能会发现它很有用http://msdn.microsoft.com/en-us/library/abx4dbyh.aspx