我有一个非常简单的c ++示例项目,它基本上只是登录到第三方库(.lib文件集合)
提供了4种配置md,mdd,mt,mtd。全部是x64。
我可以构建mdd模式并直接运行Exe文件,程序运行正常。
但是如果我在VS中运行调试器,第三方库会抛出一个运行时异常“向量删除析构函数”。
try
{
engine = new Engine(¶ms);
}
catch (XxxException& Ex)
{
return (ERROR);
}
Exception thrown at 0x00007FFA52003FB8 in Sample.exe: Microsoft C++ exception: XxxException at memory location 0x000000224C53F190.
Exception thrown at 0x00007FFA52003FB8 in Sample.exe: Microsoft C++ exception: XxxException at memory location 0x000000224C53F690.
0x00007ff75d5ab3e0 {Sample.exe!const XxxException::`vftable'} {0x00007ff75d2d8a50 {Sample.exe!XxxException::`vector deleting destructor'(unsigned int)}}
所以我无法调试。
这是什么错误,为什么它只出现在VS Debugger中?
答案 0 :(得分:0)
解决方案是从$(ProjectDir)
更改调试中指定的工作目录到$(TargetPath),exe所在的位置!
不是C ++历史上的精彩文物!