背景,我今天要调试一个大程序,里边的一个变量改变了,但代码量实在太大,
如果想监控一个类的成员变量是否等于4,怎么办呢?
#pragma once
class CMyTest
{
public:
CMyTest()
{
m_abc = 0;
}
void set(int a) { m_abc = a; };
int m_abc;
};
// 调用的地方就是
CMytest test;
for( int i = 0; i< 100; i++)
test.set( i );
怎么在windbg 里边监控到这个值呢?
1. 先在 m_abc 设断点,进去后运行
dt thhis
看到地址是:
0x00affb7c m_abc
// 于是生成下边的内存条件断点
ba w4 00affb7c "j (poi(00affb7c)>=4) '';'gc'"
运行程序在m_abc 等于4时停下来了。^-^