Каково время жизни памяти, на которое указывает typeinfo::name()?

StackOverflow https://stackoverflow.com/questions/2109648

  •  22-09-2019
  •  | 
  •  

Вопрос

В C ++ я могу использовать typeid оператор для извлечения имени любого полиморфного класса:

const char* name = typeid( CMyClass ).name();

Какой длины будет строка, на которую указывает возвращаемый const char* указатель, доступный для моей программы?

Это было полезно?

Решение

До тех пор, пока существует класс с rtti.Так что если вы имеете дело с одним исполняемым файлом - навсегда.Но для классов в библиотеке динамических ссылок это немного меняется.Потенциально вы можете его выгрузить.

Другие советы

Воспоминание, возвращенное type_info::name() будет доступен в течение всего срока действия приложения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top