首页 > 解决方案 > 添加 std::fstream 会引入链接器错误 error LNK2038: mismatch detected for 'RuntimeLibrary'

问题描述

我有一个 DLL (VC++ VS2017),它编译得非常好并且运行也很好。

它有 /MD(C 运行时设置的动态链接),可以在此处的快照中看到: 在此处输入图像描述 现在我决定

现在一切都编译、链接和运行良好,直到这里。但是如果我如下介绍std::fstream

#include <fstream>
std::fstream file2("C:\\afile.txt", std::ios::app);

它引入了以下链接器错误:

error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in ABCSrc.obj

我想知道添加 fstream 是如何引入此错误的。

我的运行时值是“动态/MD”,可以在附加的快照中看到,但不知道为什么它会显示这个错误。我该如何解决它。

标签: c++visual-c++linkervisual-studio-2017

解决方案


推荐阅读