检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2” 原因

使用VS2012版本引用外部的lib进行编译时候提示:

1>libprotobuf.lib(common.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(newSerializer.obj 中) 错误,

产生这个问题的原因是当前工程是Debug版本,而引用的库文件时Release版本,只需要把当前的Debug模式改成Release模式就可以了(毕竟引用的库文件不容易修改)


同样,如果检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”

则说明是Release模式引用了Debug的库文件。这类问题在引用文件时要注意版本的匹配

你可能感兴趣的:(C++,vs2012)