如何在Visual Studio中设置条件断点?

有没有一种简单的方法来在Visual Studio中设置条件断点?

如果我只想在某个variables的值变成某个东西的时候打断点,我该怎么办呢?

像往常一样设置断点。 右键单击它。 点击条件。

当你使用Express版本时,你可以试试这个:

#if DEBUG if( fooVariable == true ) System.Diagnostics.Debugger.Break(); #endif 

如果声明确保在发布版本中,breakepoint不会出现。

Visual Studio为条件断点提供了很多选项:

设置任何这些你

  1. 设置一个中断点
  2. 右键单击中断点,然后在popup菜单中select一个适合您的选项。

这些选项如下:

  • 您可以根据您提供的代码expression式设置条件(从popup式菜单中select条件 )。 例如,你可以指定foo == 8或其他expression式。
  • 你可以在命中几次后触发断点。 (从popup菜单中selectHit Count )。 这是一个有趣的select,因为你实际上并不限于打破一定的命中数,但你也可以select其他一些场景。 我会留给你去探索可能性。
  • 您可以在进程ID,线程ID和机器名称上设置filter(从popup菜单中selectfilter

只是另一种方式,(或者如果你使用快递)在代码中添加条件:

 if(yourCondition) { System.Diagnostics.Debugger.Break(); } 
  1. 在线上设置断点
  2. 在红球右击
  3. select条件断点
  4. 设置条件
  1. 像往常一样设置断点。
  2. 用鼠标右键单击断点标记
  3. 点击“条件…”
  4. 写一个条件,你可以使用variables名
  5. select“是”或“已更改”

像平常一样创build一个断点,右键点击红点并select“条件”。

  1. 像往常一样设置断点
  2. 右键单击断点并select条件
  3. 您将看到一个对话框,显示“断点条件”
  4. 把一个条件,如“我== 5”

当我是5时,断点只会被打。

在Visual Studio 6.0上

Alt + F9

写实际情况可能是棘手的部分,所以我倾向于

  1. 设置一个常规的断点
  2. 运行代码,直到第一次触发断点
  3. 使用立即窗口 (Debug> Windows> Immediate)来testing你的expression式
  4. 右键单击断点,单击“条件”并粘贴到expression式中

使用立即窗口的优点

  • 它有智能感知
  • 您可以确定expression式中的variables在评估expression式时处于范围之内
  • 您可以确定您的expression式返回true或false

当代码引用名为“Setting”的表时,

 table.GetTableName().Contains("Setting") 

正常情况下设置breakpoint ,右键单击断点并selectcondion选项并设置您的条件。

创build一个条件函数断点

1)在“断点”窗口中,单击“新build”以创build新的断点。

2)在function选项卡上,为function键入反转。 为行input1,为字符input1,然后将语言设置为基本。

3)单击条件,并确保选中条件checkbox。 为条件inputinstr.length> 0,确保select了“是”选项,然后单击“确定”。

4)在“新build断点”对话框中,单击“确定”。

5)在debugging菜单上,单击开始。