¿Cómo se visualiza vtable usando un puntero al objeto de la clase base que tiene funciones virtuales?vtable en la clase polimórfica de C++ usando gdb
Respuesta
¿Has probado set print object on
?
(gdb) help set print object
Set printing of object's derived type based on vtable info.
BTW, en lldb esto es equivalente a "configuraciones establecidas target.prefer-dynamic run-target". Estoy respondiendo esto solo porque gdb ya no es parte de Xcode. – kakyo
Lo sentimos, debería haber sido "configuración establecida target.prefer-dynamic-value run-target" – kakyo
Gracias. Esa es la respuesta, ¡me alegro de que hayas publicado todo esto en 2010! –
Si usted tiene una lo suficientemente nueva versión de GDB, es posible que desee ver en la "información VTBL" de comandos (o tal vez se le llama "información vtable"; mi propia versión de gdb no es lo suficientemente nuevo, y entonces no puedo probar la función yo mismo).
sólo me di cuenta de la función cuando google para una respuesta a esta pregunta y me di cuenta de mensajes a la lista de correo GDB alrededor del año 2012, sobre todo éste de marzo de 2012:
- 1. C++: plantilla de clase polimórfica
- 2. Imprimir tablas C++ usando GDB
- 3. ¿Cuándo se inicializa vptr (apuntando a vtable) para una clase polimórfica?
- 4. Vtable en C++
- 5. C++ referencia indefinida a vtable
- 6. Determinación del tamaño de una clase polimórfica C++
- 7. Pruebe si una clase es polimórfica
- 8. C++ - Referencia Indefinido a `vtable
- 9. descifrando volcados de vtable
- 10. ¿Cuándo se crea VTable en C++?
- 11. Usando gdb en Emacs 23
- 12. Cómo usar el vtable para determinar el tipo de clase
- 13. C++ Indefinido referencia a VTABLE y la herencia
- 14. ¿No se puede abatir porque la clase no es polimórfica?
- 15. Pasando a la siguiente "instrucción" usando gdb
- 16. usando getopt con gdb
- 17. ¿Cómo depurar usando gdb?
- 18. ¿Cómo "mirar" una matriz dinámica de C++ usando gdb?
- 19. ¿Cómo se muestra el VTABLE de una clase de C++ a través de GCC?
- 20. GADT para la lista polimórfica
- 21. ¿Dónde se almacena la memoria en vtable?
- 22. SQLAlchemy Relación polimórfica con la herencia concreta
- 23. ¿Cómo puedo ver cómo se distribuye una clase de C++ en la memoria con gdb?
- 24. depuración vtable errores de enlace en GCC
- 25. Depuración usando gdb - Mejores prácticas
- 26. comenzar GDB usando un pid
- 27. Rails has_many polimórfica
- 28. ¿Cuál es el diseño de VTable y la ubicación del puntero VTable en objetos C++ en GCC 3.xy 4.x?
- 29. asociación polimórfica
- 30. referencia indefinida a VTABLE para ...
¿Por qué quiere inspeccionar el vtable? Normalmente se considera una implementación que el compilador usa para funciones virtuales. –
Pregunta muy relacionada: http://stackoverflow.com/questions/2549618/ –
si usa ddd front-end es una opción, automatiza la visualización de muchos objetos C++. – PypeBros