Если необходимо просмотреть содержимое стандартного вектора myVector
(для определенности -- типа std::vector<int>
), сделать это в GDB можно с помощью следующей команды
print *(myVector._M_impl._M_start)@myVector.size()
Просмотреть N первых элементов myVector можно командой
print *(myVector._M_impl._M_start)@N
Расшифровывается это следующим образом.
Подробности реализации std::vector
зависят от версии компилятора, но в GCC, начиная, по крайней мере, с версии 4.1.2, указатель на первый элемент вектора равен
myVector._M_impl._M_start
Команда печати N элементов массива, начиная с заданного указателя P:
print P@N
или, в краткой форме:
p P@N
Комментарии
comments powered by Disqus