Задать значение переменной std :: string из gdb? - PullRequest
16 голосов
/ 23 марта 2010

Возможно ли ... когда отладчик остановлен на точке останова, изменить значение переменной std :: string, не прибегая к таким хакам, как настройка образа памяти текущего буфера?

например. что-то вроде "set var mystring =" hello world "

1 Ответ

26 голосов
/ 23 марта 2010

Попробуйте (протестировано и работает для меня):

call mystring.assign("hello world")

Ключ в том, что вместо непосредственного изменения памяти вы вызываете функции объекта для изменения его состояния. Так получилось, что std::basic_string имеет функцию-член под названием assign, которая выполняет эту работу.

...