Я пытаюсь отладить код на С ++ и, в частности, я хотел бы проверить состояние реализованного мною объекта, который состоит из вектора универсального класса, каждый элемент которого содержит список универсальной структуры.
Я использую Eclipse, и когда я пытаюсь отладить и получить доступ к одному из этих списков, чаще всего он говорит мне:
Не удалось выполнить команду MI: -data -valu-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:
Спасибо за любые предложения.