Chinaunix

标题: gdb调试c++的问题 [打印本页]

作者: rushrush    时间: 2006-12-28 22:59
标题: gdb调试c++的问题
怎么把vector里面元素的值给显示出来?

vector<XXX> list;

(gdb)p list
$1={ 一大堆东西几乎看不懂}
(gdb)p list.at(1).xxx
也不行,说at()是内联的,无法调用。。

求助高手。。。。
作者: rushrush    时间: 2006-12-29 11:47
沉下去了,自己顶一下。。。
作者: whyglinux    时间: 2006-12-30 12:27
GDB 在调用成员函数的时候需要首先找到函数的代码才能执行。如果一个成员函数是内联的、并且没有在程序中被使用,那么 GDB 将找不到其代码,也就不能执行此成员函数。

对于这个问题,有以下两种解决方法:

作者: redac    时间: 2007-01-29 16:53
直接使用:
  p v[0]
也可以




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2