【问题标题】:Eclipse CDT and GDB debugging. Value of struct membersEclipse CDT 和 GDB 调试。结构成员的值
【发布时间】:2012-02-18 16:16:44
【问题描述】:

我刚从 Visual Studio 2010 切换到 Eclipse (Ubuntu)。

我有一个像 CvCapture *capture 这样的全局初始化结构。

如何在调试窗口中获取捕获成员的值?捕获甚至未显示在变量窗口中。我添加了 watch 表达式,但我没有得到捕获的成员值。

编辑:截图http://tinypic.com/r/10s6x3q/5。另外我不能在变量窗口中添加全局变量。它处于非活动状态。

【问题讨论】:

    标签: eclipse debugging gdb eclipse-cdt


    【解决方案1】:

    struct CvCapture* 是一个不透明的句柄(参见en.wikipedia.org/wiki/Opaque_pointer):用户不应该看到里面的内容
    它的内容仅在库代码中声明,您无法在任何导出的包含中找到它,例如 highgui.h(它只是前向声明的),Eclipse 也没有。

    你可以做什么:
    在调试模式下重新编译 highgui 库,将程序与它链接,启动调试会话并输入库的函数之一,例如 cvGetCaptureProperty()。在那里,gdb 将能够看到struct CvCapture 的内容(在_highgui.h 中定义),Eclipse 会向您显示。

    【讨论】:

      猜你喜欢
      • 2013-11-20
      • 2010-12-07
      • 2015-11-12
      • 2013-12-23
      • 2013-01-18
      • 2013-04-01
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      相关资源
      最近更新 更多