Диаграмма классов — Есть ли способ получить список классов, которые существуют в исполняемом файле C ++?

У меня есть исполняемый двоичный файл C ++, который был скомпилирован из объединения многих файлов, в котором определено несколько классов. Можно ли получить список классов, методов и свойств, которые есть в нем? Возможно, я слишком много спрашиваю, но могу ли я как-то автоматически сгенерировать диаграмму классов, которая является моей конечной целью?

0

Решение

Если исполняемый файл был скомпилирован с символами отладки, у вас может быть возможность хотя бы получить имена классов. В Linux вы бы сделали

nm -C <executable>

который должен дать вам список символов. Вы должны прочитать документацию nm, потому что он предоставляет довольно мало информации. Тем не менее, вы не получите иерархию классов. Я даже считаю, что это будет довольно сложно. Вы можете попробовать проверить, какие конструкторы вызываются другими конструкторами, возможно, вам повезет, но это будут быть беспорядком

1

Другие решения

На Linux вы можете использовать нм получить символы в библиотеке (классы, методы и функции).

0