gpt4 book ai didi

c# - 当观察变量改变时暂停执行?

转载 作者:太空狗 更新时间:2023-10-30 01:06:37 24 4
gpt4 key购买 nike

是否可以在监视变量(不是属性,只是普通变量)发生变化时中断执行以查看发生变化的位置?我搜索并找到了this question这似乎与我正在寻找的属性有关。

这个变量在几千行代码中被多次使用,但只有在出现问题时才会从null改变。我们正在努力追踪这个问题。

最佳答案

  1. 在变量周围创建一个断点(f9)
  2. 右键单击断点的红色圆圈,然后单击“条件...”
  3. 输入变量的名称,并将单选框更改为“已更改”
  4. 断点现在应该有一个 + 来表示它是有条件的

但是:坦率地说,我发现以下更简单、更有效——尤其是对于字段;假设我们从:

string name;

我们将其暂时更改为:

private string __name;
string name {
get { return __name; }
set { __name = value; }
}

然后在 set 行放置一个断点。它应该仍然可以编译,你可以看到微不足道的变化。对于更复杂的情况:

private string __name;
string name {
get { return __name; }
set {
if(__name != value) {
__name = value; // a non-trivial change
}
}
}

并将断点放在最里面的一行;这会绕过在不实际更改值的情况下设置字段的代码。

关于c# - 当观察变量改变时暂停执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14873922/

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