我需要调试一个基于 Qt (QGis) 的相当复杂的应用程序的某些部分,并且我已经使用 VS 2008 C++ Express 来构建它,其中包含调试信息(使用 /Od 删除优化)。我可以检查简单的类型变量(如 int、string 等),但我无法评估实例方法,因为它会抛出错误,指出该方法不存在等(CXX0052 errcode)。
我是否必须在调试模式下编译才能获得更深入的了解?表达式评估器是否应该让我检查实例方法?或者,VS Express 调试器是否比完整的 VS 更受限制?
我需要调试一个基于 Qt (QGis) 的相当复杂的应用程序的某些部分,并且我已经使用 VS 2008 C++ Express 来构建它,其中包含调试信息(使用 /Od 删除优化)。我可以检查简单的类型变量(如 int、string 等),但我无法评估实例方法,因为它会抛出错误,指出该方法不存在等(CXX0052 errcode)。
我是否必须在调试模式下编译才能获得更深入的了解?表达式评估器是否应该让我检查实例方法?或者,VS Express 调试器是否比完整的 VS 更受限制?
如果您的方法是内联定义的,或者您的方法在另一个程序集中,您可能会收到这样的错误。我发现如果该方法不是内联的并且在同一个程序集中,我总是可以在即时窗口中像这样评估:
?myObject.myFunc()
您可能会发现此线程很有用:为什么在 VC++ 调试器上评估表达式时出现“成员函数不存在”错误?