2012-01-25 51 views
1

我剛剛從Visual Studio 2010切換到Eclipse(Ubuntu)。Eclipse CDT和GDB調試。結構成員的價值

我有一個像這個CvCapture *捕獲一樣的全局初始化結構。

如何在調試窗口中獲取捕獲成員的值?在「變量」窗口中不顯示捕獲。我添加了監視表達式,但我沒有獲取捕獲的成員值。

編輯:屏幕截圖http://tinypic.com/r/10s6x3q/5。另外,我無法在變量窗口中添加全局變量。它無效。

回答

1

struct CvCapture*是一個不透明的手柄(請參閱en.wikipedia.org/wiki/Opaque_pointer):用戶不應該看到內部有什麼。
其內容僅在庫代碼中聲明,您不能在任何導出的包含像highgui.h(它只是前向聲明的)中找到它,Eclipse也不會。

你可以做什麼:
重新編譯調試模式highgui庫,它鏈接程序,啓動調試會話,並進入該庫的功能,如cvGetCaptureProperty()之一。一旦gdb能夠看到struct CvCapture(在_highgui.h中定義)的內容,Eclipse會顯示給你。