我正在编译并链接批处理文件中的源代码,而我现在导入的库是MSVCRT.LIB Kernel32.lib User32.lib
代码有效,直到我加入string
iostream
和fstream
并创建一些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
选项,因此我可以决定使用哪些库,但是现在我遇到了这个问题,无法找到这些标准函数的库。
答案 0 :(得分:1)
简短:MSVCPRT.LIB
这些符号在C ++运行时库中定义。虽然你确实链接了MSVCRT.lib
(注意没有字母P),但这只是C,而不是C ++运行时。
这是MSDN页面,您可能会发现它很有用http://msdn.microsoft.com/en-us/library/abx4dbyh.aspx