Come visualizzare vtable usando un puntatore all'oggetto di classe base con funzioni virtuali?vtable in classe polimorfica di C++ usando gdb
risposta
Hai provato set print object on
?
(gdb) help set print object
Set printing of object's derived type based on vtable info.
BTW, in lldb questo è equivalente a "set di impostazioni target.prefer-dynamic run-target". Sto rispondendo solo perché gdb non fa più parte di Xcode. – kakyo
Spiacenti, avrebbe dovuto essere "set di impostazioni target.prefer-dynamic-value run-target" – kakyo
Grazie. Questa è la risposta - così contento che l'hai pubblicato fino al 2010! –
Se si dispone di una sufficiente nuova versione di gdb, si consiglia di guardare al "informazioni vtbl" di comando (o forse si chiama "info vtable"; la mia versione di gdb non è sufficientemente nuovo, e quindi non posso testare la funzione da solo).
Ho notato solo la funzione quando googling per una risposta a questa domanda e ho notato i messaggi alla mailing list gdb circa 2012, in particolare questo da marzo 2012:
perché vuoi per ispezionare il vtable? Normalmente è considerata un'implementazione che il compilatore utilizza per le funzioni virtuali. –
Domanda molto correlata: http://stackoverflow.com/questions/2549618/ –
se l'uso del front-end ddd è un'opzione, automatizza molti degli oggetti C++ visualizzati. – PypeBros