2013-04-05 7 views
0

Я отлаживаю программу C++ с gdb в eclipse. Как я могу теперь определить точный класс объекта? Скажем, я отладки методэкземпляр класса объекта

void foo(Instruction *I){ 
    I->bar(); 
} 

Допустим также, что Instruction имеет много подклассов. как я могу узнать, какой подкласс Instruction создает объект I?

+0

Дайте поля вашего подкласса. Это может быть просто перечислимое перечисление. Установите их в каждом конструкторе подкласса. – 2013-04-05 22:08:27

+0

Я ищу решение в GDB, не изменяя код –

+0

Можете ли вы dynamic_cast в командной строке gdb? В противном случае найдите vptr? –

ответ

0

Вы хотите «установить объект печати на». Это будет использовать информацию RTTI для печати полного объекта.

Это должно быть значение по умолчанию; надеюсь, это будет в конечном итоге.

Смежные вопросы