链接错误 2038

一、我碰到的

  今天碰到一个懵逼的链挡错误:

    error LINK2038;转到输出窗口提示:检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”

好在百度上大神多,立马找到课文:

  原因:产生这个问题的原因是当前工程是Debug版本,而引用的库文件时Release版本

反过来提示:检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”,则是上述原因倒过来。

  解决方法:要说吗,那说一下吧,引用相应的库,或者切换一下版本。

二、可能的另外一个原因

  如果输出窗口提示:检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticDebug”不匹配值“MD_DynamicDebug”

  原因:根据提示可以知道咱们的运行库是不匹配的,它需要的是运行库是静态库,而当前设置的是动态库

  解决方法:在工程上右键 -> 属性 --> c/c++ --> 代码生成 --> 运行库,将其修改成“多线程(/MTd)“(具体还应该根据实际情形选择)

原文地址:https://www.cnblogs.com/ice-arrow/p/11277661.html