gpt4 book ai didi

c++ - 如何调试在未处理的异常中终止的程序?

转载 作者:IT王子 更新时间:2023-10-29 00:47:51 26 4
gpt4 key购买 nike

我在 Linux 平台上用 C++ 编程。

我的程序因这个(未处理的???)异常而终止:

“在抛出'long'实例后调用终止”中止

抛出异常的代码在 try-catch block 中,那么为什么会发生这种情况?从函数返回时抛出异常。

我习惯于 C 编程,对 C++ 的经验很少(这是主要问题)。我不知道如何调试这个问题。我不期待解决方案,而是调试此问题的方向/指针。

提前致谢。

最佳答案

您可以在 gdb 下运行您的应用程序(已使用 -g 使用调试信息构建它)并在使用以下命令抛出异常时让它中断:

(gdb) catch throw

这会将您带到异常的起源。这个问题提供了更多信息:

请注意,抛出序数类型(例如 long)有点不寻常。它可能在一些临时代码中,因此四处搜索可能会很快找到它。

关于c++ - 如何调试在未处理的异常中终止的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1789195/

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