Visual Studio有没有一个工具可以跟踪(或中断)变量值?

4

在Visual Studio调试器中,是否有工具或设置可以在断点处停止或当变量设置为特定值时停止?我的意思是,如果我知道该值将被设置为“HELLO”,我希望调试器会以与到达断点相同的方式停止。

5个回答

9

8
  1. 在代码中的任何位置设置断点。
    • 通过转到调试菜单-> 窗口 -> 断点,启用断点列表窗口。
    • 在断点窗口中,右键单击断点
    • 选择条件...
    • 输入涉及您变量的任何表达式

当满足条件时,断点将被触发。

通过右键单击断点菜单,您还可以设置以下断点:

  • 仅针对某些进程或线程
  • 达到命中计数
  • 只有在条件或变量更改时才会触发

你可以在那里进行字符串比较吗? - i_am_jorf
你可以尝试一下,如果不行的话,例如只需在代码中将一个值设置为true,当它相等时,然后将其用作条件。 - Brian R. Bondy

4
有观察点存在。

3

戴夫的回答。

我要补充的是,您可以添加一个包含几个虚拟语句的if语句,并在其中设置断点。这样做的效果相同。

典型用法:

if (i == 250) {
 int dummy = 2+2;  //breakpoint here
}

在您的情况下,假设您观察一个字符串的值(假设是C++字符串),请注意以下内容:
if (mystring == "hello")
{
  int dummy = 2+2; //breakpoint here
}

2
或者使用 DebugBreak() 来中断调试器并跳过虚拟语句。 - i_am_jorf

0
尝试使用 System.Diagnostics.Debug.Assert(yourVariable <> "HELLO"),然后点击“取消”按钮开始调试。这适用于ASP.net和Silverlight项目。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接