【问题标题】:Conditional breakpoint depends on other breakpoint条件断点依赖于其他断点
【发布时间】:2016-09-06 06:39:29
【问题描述】:

如果通过了其他断点,我需要在断点处停止。 VC++可以实现吗?

【问题讨论】:

  • 你是如何使用另一个断点的? “通过”是什么意思?如果有两个断点,它们之间的关系是什么?如果它在断点 1 处停止,然后您像使用 Step Into 一样调试您的应用程序,为什么不将前面的代码行(断点 1 中的代码)设置为条件?因此,如果您逐步调试应用程序,它可能会在断点 2 处停止。
  • 是的,有两个断点 A 和 B。我想作为 VS 仅在当前运行中停在 A 上的情况下停在 B。

标签: debugging visual-c++ breakpoints visual-studio-debugging


【解决方案1】:

你为什么用这种方式调试你的两个断点?如果调试运行到特定的代码行,它会调用条件,然后触发条件断点,如果它只是运行到A代码行,我认为它不能在B代码行中调用条件,除非它真的调用/运行到这一行。

【讨论】:

  • 当调试到达这一行时,我需要在 B 停止。但是,请在 B 之前通过 A 时才停止
  • @vico,它不支持,我们可以在B中设置一个条件与A的一些参数,但调试器需要真正执行到B行。由于两个断点(在代码中A行和B行)有执行顺序,如果A先运行,会先下A断点,不会下B断点,除非你想避开这里有DebuggerNonUserCode属性的第一个断点:blogs.msdn.microsoft.com/visualstudioalm/2016/02/12/…
  • @vico,有什么更新吗?这是您想要的解决方法吗?
【解决方案2】:

我使用 c#,我知道 JetBrains Rider 具有您想要的功能。称为从属断点。所以我猜他们的 c++ IDE CLion 也有这个功能。

在 Visual Studio 中,您可以手动执行此操作。设置两个断点,先禁用B。运行代码,A被命中后执行暂停,然后启用B,按继续。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-23
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2012-07-02
    • 2014-08-06
    • 1970-01-01
    相关资源
    最近更新 更多