c++ - codeblock 调试时要怎么查看容器内元素的值?
天蓬老师
天蓬老师 2017-04-17 13:09:55
0
2
819

ode

我像图中所示 在监视窗口输入 (decrptS.begin()) ,(decrptS.begin()+1)
显示

貌似是只能监视 raw type 基本类型

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(2)
Peter_Zhu

沒用過CodeBlocks,不過調試器想要調試STL,肯定是需要插件的,單純的GDB或者VC的調試器,都不行,都得加插件。
因為各個STL的內部實作都不一樣,libstdc++的話,https://github.com/egmkang/gdb_printers__python
如果用的是libc++,可以看https://github.com/egmkang/pretty_printer_for_libcxxer_for_libcxx,後面這個是我寫的

幫你搜了一下,丫的實在太懶了
http://www.cnblogs.com/wanglikai91/archive/2011/11/08/2241432.html

黄舟

如果你使用VC++2010以上版本的話,問題都會很簡單。 VC++的debugger允許你自訂debugger查看元素內容的時候的外觀,而且已經自帶針對STL的設定。當你滑鼠移動到一個容器上面的時候,他就會直接把所有的容器的內容告訴你。所以@emgkang 的答案說“單純的GDB或VC的調試器,都不行”,是不對的。

我自己因為某些原因也寫了自己的容器類,然後就是用這個xml,解決了這個問題。你只要在C盤裡面搜尋到stl.natvis,把檔案貼在相同的資料夾,重啟VC++,你自己的類別庫的插件就搞定了。建議題主試試,使用進階工具,不要糾結於什麼CodeBlocks。

https://github.com/vczh-libraries/Vlpp/blob/master/Release/vlpp.natvis

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板