我有程序,有一个永远不应该改变的variables。 然而,不知何故,它正在改变。 有没有办法让debugging器停止时,该特定的成员variables被修改?
设置一个数据断点,当某个变量发生变化时停止执行。
打破你的变量的初始化,或者你的变量可见的地方 – 你需要能够在内存中获得它的地址。 然后,从菜单中选择Debug – > New Breakpoint – > New Data Breakpoint。 输入“ &var
”(用var
代替变量的名字)
这将在修改您的变量的代码的确切线上进入调试器。
更多文档在这里:
您可以在使用变量的地方设置条件断点。
在Visual Studio中,当光标位于要设置断点的行时,按F9可设置断点。
接下来,右键单击断点并选择条件。
输入你的状况
n != 5
祝你好运。
这里是MSDN的链接 。
如果通过赋值或其他直接更新进行修改,则数据断点将起作用。 但是,如果它是通过其他方式进行修改的 – 例如缓冲区覆盖 – 我不确定它是否会告诉你什么时候发生。 只是要记住的东西。