我正在尝试调试c ++代码,尤其是我想检查我实现的对象的状态,该对象由一个泛型类的向量组成,每个类均包含一个泛型结构的列表。
我使用的是Eclipse,当我尝试调试并访问其中大多数列表时,大多数时候它告诉我:
无法执行MI命令: -data-evaluate-expression((store).sectors) 来自调试器后端的错误消息: 无法访问地址0x1处的内存
尴尬的是,有时我能够访问并查看这些对象的内容。
我正在使用的编译器的g ++版本是7.3.0,而gdb的版本是“ GNU gdb(Ubuntu 8.1-0ubuntu3)8.1.0.20180409-git”。 应用程序目标为x86_64,而gdb被配置为x86_64。 我尝试按照以下步骤进行STL支持打印:https://sourceware.org/gdb/wiki/STLSupport 我还将调试配置初始化路径文件设置为〜/ .gdbinit。
如果我尝试从终端使用gdb访问这些对象之一,则会收到此错误:
$ 1 = std :: __ cxx11 :: listPython异常无法>找到类型std :: __ cxx11 :: list,> std :: allocator>> :: _ Node:
谢谢您的建议。