gpt4 book ai didi

c++ - 是什么阻止异常被捕获?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:57:11 26 4
gpt4 key购买 nike

我有一个用 VS2005 开发的 Win32 C++ 应用程序。有一个 try {} catch (...) {} 包裹着一个代码块,但 3 个函数很深,当算法崩溃并尝试引用 std::vector 的末尾,而不是捕获异常,程序进入 VS 调试器,告诉我有一个未处理的 win32 异常,在我的函数上方的调用堆栈中找到以下内容:

msvcr80.dll!:inavlid_parameter_noinfo()
msvcr80.dll!:invoke_watson(....)
msvcr80.dll!:_crt_debugger_hook(...)

如何防止调试器被调用?这发生在 30 分钟模拟结束时,此时我失去了所有结果,除非我可以捕获并记录异常。这个和类似的 try/catch 结构在过去一直有效——是否有影响它的编译器设置?帮忙?

最佳答案

您可能希望将非 C++ 异常转换为 C++ 异常。 Here这是一个如何做到这一点的例子。

关于c++ - 是什么阻止异常被捕获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8089851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com