用VS2013编译某个项目的时候出现下面的错误:
error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1700”
error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1800”

解决方案:

_MSC_VER 定义编译器的版本 ,该错原因是编译器版本不匹配故如下修改


在项目右键属性-配置属性-常规中,平台工具集选用为合适平台即可,我选择 vs2013 (v120).

不同编译器对应的不同工具集参考如下:

MS VC++ 12.0 _MSC_VER = 1800
MS VC++ 10.0 _MSC_VER = 1600
MS VC++ 9.0 _MSC_VER = 1500 
MS VC++ 6.0 _MSC_VER = 1200 
其中MS VC++ 12.0就是Visual C++ 2013,MS VC++ 10.0就是Visual C++ 2010,MS VC++ 8.0就是Visual C++ 2005。