Visual Studio:如何在修改成员变量时停止调试器?

时间:2009-05-16 00:17:45

标签: c++ windows visual-studio

我的程序有一个永远不会改变的变量。然而,不知何故,它正在改变。有没有办法让修改器在修改特定成员变量时停止?

3 个答案:

答案 0 :(得分:10)

设置数据断点,以便在某些变量发生变化时停止执行。

中断变量的初始化,或变量可见的某个位置 - 您需要能够在内存中获取其地址。然后,从菜单中选择Debug - >新断点 - >新数据断点。输入“&var”(将var替换为变量名称。)

这将在修改变量的确切代码行中进入调试器。

此处有更多文档:

http://msdn.microsoft.com/en-us/library/350dyxd0.aspx

答案 1 :(得分:2)

您可以在使用变量的位置设置条件断点。

在Visual Studio中设置断点,当光标位于要设置断点的行时按F9 接下来,右键单击断点并选择Condition 输入您的条件

n != 5
祝你好运。

这是a link from MSDN

答案 2 :(得分:0)

如果通过分配或其他直接更新对其进行修改,则数据断点将起作用。但是,如果通过其他方式修改它 - 例如缓冲区覆盖 - 我不确定它是否会告诉你它何时发生。请记住一些事情。