调试"one line"方法

Debugging "one line" methods

本文关键字:方法 line one 调试      更新时间:2023-10-16

imagine (in header file):

int getInt() { return m_intValue; }

int getInt() 
{
    return m_intValue;
}

我如何调试第一个示例,以查看m_intValue ?在示例2中,我可以在第一行设置断点,按F10(跳过),然后看到(在悬停m_intValue后)m_intValue中是什么。或者在return m_intValue线上加上BP。

但是当我把BP放在第一个版本的行时,我看不到m_intValue的调试信息。

这个例子只是示范。我知道我可以在适当的地方看到值,我调用getInt(看到返回值)。但在更复杂的情况下(例如,返回值因超出作用域而修改),我真的希望在处理返回时看到m_intValue

希望你能理解我的问题。

谢谢!

您将在错误的代码处设置断点。它在函数入口点中断,this变量还没有初始化。如果要调试这些访问器,您肯定希望使用第二种编码风格。你不应该这样做,它没有bug。

如果你真的需要用第一个代码段中的代码检查对象,那么切换到反汇编视图,单步跳过堆栈框架设置代码。