在进行c++开发项目的时候,使用到一个dll的时候,一引入运行,程序报错了,string错误。
但是根据分析,string错误传入的字符串很短,不可能是越界操作,后来根据debug发现,传入的string在dll中变成了unicode编码字符,从而导致错误。
在项目中,用的是多字符集,而dll是unicode字符集,所以两边处理字符集的方式不同,内存中就会出现问题。
因此,要保持两边字符集一致是根本解决问题,或者不使用string类型。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。