【问题标题】:Can I make Visual Studio break on a user-defined C++ exception?我可以让 Visual Studio 中断用户定义的 C++ 异常吗?
【发布时间】:2012-05-07 16:59:55
【问题描述】:

我有一个引发许多(已处理)异常的应用程序。我特别想打破一种例外情况。

是否可以让调试器在特定的用户定义异常上中断?我不明白为什么这是不可能的,因为它确实知道抛出的异常的类型。

我可以通过在异常的构造函数中设置断点来解决这个问题,但如果知道如何以“正确”的方式进行操作会很好。

【问题讨论】:

  • 把它放在构造函数中一直对我有用——如果它对你有用,你为什么想要另一种方法?它还具有让您在堆栈展开之前探索条件的优点。
  • @MarkRansom 因为在一般情况下您可能无法访问异常的源代码?顺便说一句,让 VS 停止也可以让您检查调用堆栈(VS 在异常抛出时停止,而不是在捕获时停止)。

标签: c++ windows visual-studio exception breakpoints


【解决方案1】:

如果您进入Debug 菜单并选择Exceptions...(或按Ctrl+Alt+E),您将看到一个对话框:

您需要单击Add... 按钮,输入您的自定义类型名称,并确保选中新异常类型的复选框。

【讨论】:

    【解决方案2】:

    是的,只需使用__debugbreak 函数

    【讨论】:

      【解决方案3】:

      试试Debug menu > Exceptions > Add

      【讨论】:

        猜你喜欢
        • 2018-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多