调试时经常需要打断点来调试程序,vs中的断点有普通断点,条件断点,数据断点和函数断点。这里只介绍数据断点
数据断点能有效的检测对象数据的变化。当一个复杂程序(或者多线程中)有很多地方都可能改变某一个对象的值,如果一个对象被莫名更改而不知道是哪里对其做了修改,那么数据断点就派上用场了。数据断点创建后当程序修改此对象时程序就会中断运行,方便开发人员找到修改对象的代码位置。
设置数据断点
在含有此对象的代码处打上普通断点,程序运行到此后 Debug->New breakpoint->data breakpoint在地址处输入对象的地址或者&对象名 如果32位程序地址长度就是4字节,64位程序地址长度改为8字节。点击OK 然后继续run就好了。程序会在对象被改变的代码处自动break。