Pregunta Establecer un valor de variable std :: string desde gdb?


¿Es posible ... cuando el depurador se detiene en un punto de interrupción, modificar el valor de una variable std :: string sin recurrir a hacks como ajustar la imagen de memoria del búfer en uso?

p.ej. algo así como "set var mystring =" hello world "

?


14
2018-03-23 17:50


origen


Respuestas:


Pruebe esto (probado y funciona para mí):

call mystring.assign("hello world")

La clave es que en lugar de modificar la memoria directamente, llamas a las funciones del objeto para cambiar su estado. Sucede que std::basic_string tiene una función miembro llamada assign que hace el trabajo.


23
2018-03-23 17:56