L'impostazione di un valore di una variabile std :: string da gdb?
Domanda
E 'possibile ... quando il debugger è fermato a un punto di interruzione, per modificare il valore di una variabile std :: string senza ricorrere a hack come tweaking l'immagine della memoria del buffer corrente?
es. qualcosa come "set var mystring =" ciao mondo "
Soluzione
Prova questo (testato e funziona per me):
call mystring.assign("hello world")
La chiave è che invece di modificare direttamente la memoria, si chiamano funzioni dell'oggetto per cambiare il suo stato. Accade così che std::basic_string
ha una funzione membro chiamata assign
che fa il lavoro.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow