В C ++ я могу использовать оператор typeid для получения имени любого полиморфного класса:
typeid
const char* name = typeid( CMyClass ).name();
Как долго строка, на которую указывает возвращенный указатель const char*, будет доступна моей программе?
const char*
Пока существует класс с rtti. Так что если вы имеете дело с одним исполняемым файлом - навсегда. Но для классов в Dynamic Link Librariy это немного смещается. Потенциально вы можете разгрузить его.
Память, возвращаемая type_info::name(), будет доступна на весь срок службы приложения.
type_info::name()