Я заметил, что если я запускаю strings
в моей программе, скомпилированной с помощью g++
, вывод содержит имена различных классов, которые он использует.
Программа была скомпилирована с -O3
и без -g
или -p
, и имена классов все еще присутствуют, когда я удаляю двоичный файл.
Мне было интересно, зачем это нужнодля g++
хранить эту информацию в двоичном виде?Все присутствующие имена классов кажутся классами, использующими виртуальные функции, поэтому я подозреваю, что это как-то связано с этим.