我的程序有一个永远不会改变的变量。然而,不知何故,它正在改变。有没有办法让修改器在修改特定成员变量时停止?
答案 0 :(得分:10)
设置数据断点,以便在某些变量发生变化时停止执行。
中断变量的初始化,或变量可见的某个位置 - 您需要能够在内存中获取其地址。然后,从菜单中选择Debug - >新断点 - >新数据断点。输入“&var
”(将var
替换为变量名称。)
这将在修改变量的确切代码行中进入调试器。
此处有更多文档:
答案 1 :(得分:2)
您可以在使用变量的位置设置条件断点。
在Visual Studio中设置断点,当光标位于要设置断点的行时按F9 接下来,右键单击断点并选择Condition 输入您的条件
n != 5
祝你好运。
答案 2 :(得分:0)
如果通过分配或其他直接更新对其进行修改,则数据断点将起作用。但是,如果通过其他方式修改它 - 例如缓冲区覆盖 - 我不确定它是否会告诉你它何时发生。请记住一些事情。