我正在做调试,想要检查变量的值变化的位置。我试着设置一个观察点,方法是像这样说‘.For’structure -> .When func.getvalue()‘这不是一个简单的变量(可能是调用函数的较大结构的某个部分)。在当前的上下文.When中,我在相同的目录中执行grep,得到相同expression.Am的3-4个实例,我遗漏了什么吗?
发布于 2011-07-21 10:54:19
我是不是漏掉了什么?
是的,你似乎至少遗漏了一些东西:
structure->somefunc.getvalue()表达式没有任何意义。您的意思可能是some_variable->some_field.getvalue()some_variable存在的上下文中。some_variable出现在grep输出中并不意味着GDB当前可以对其进行评估。当您在正确的上下文中停止程序时,它可能能够评估它。getvalue()的返回值上设置观察点是没有意义的(也是不可能的)。只有当您可以指定要监视的内存位置时,观察点才有意义。如果(很有可能) getvalue()返回类似this->m_value的内容,那么您真正想要的是在*(&some_variable->some_field.m_value).上设置一个观察点
https://stackoverflow.com/questions/6770290
复制相似问题