LNK2038错误解决过程



 所用的vs2013环镜

昨天好好的编译成功的工程早上发生

错误 1 error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项:  值“2”不匹配值“0.....错误

百度查了下资料通过设置编译选项/mtd 等等都没有解决,但是release版本设置编译通过说明代码没有问题;

通过尝试不同设置总算找到解决方法:

属性->c/c++->预处理器->预处理器定义

添加一个项

_HAS_ITERATOR_DEBUGGING

就可以正常编译了.

处理过程:

把_ITERATOR_DEBUG_LEVEL复制出来放在代码那边查找到_ITERATOR_DEBUG_LEVEL定义发现是条件编译,把需要的级别定义上去就好了如下图所示.

整个问题解决了.

2021.03.10同样碰到了2038的问题,但是解决方式不同,看看错误图片吧:

和第一种方法处理不一样这个是运行时库不匹配,我是新添加一个htmlcxx工程的lib产生的错误,解决方法是:

在htmlcxx工程中调整一下编译选项(由于我的工程是动态库,所以添加的lib运行库要MDD,有含DLL选项的):

重新编译后,复制htmlcxx.lib文件到工程,错误情况消失,这次我使用的环境是vs215。

可以参考今天的博文: htmlcxx工程的vs2015首次成功使用过程

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

界忆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值