Почему std:: type_info noncopyable? Могу ли я где-нибудь его хранить?

Класс std::type_info не копируется. Это затрудняет сохранение его в объекте для последующего использования. Что мне делать?

Ответы

Ответ 1

В С++ 11 есть гораздо лучшее решение. Новая копируемая оболочка std:: type_index. Вам нужно включить заголовок "typeindex", чтобы использовать его.

Ответ 2

Вы можете сохранить указатель на постоянный объект std::type_info.

Ответ 3

Из MSDN и Документация по электронной документации IBM:

Класс type_info описывает информацию о типе, сгенерированную в программа компилятором. Объекты этого класса эффективно хранят указатель на имя для типа. Класс type_info также сохраняет закодированное значение, подходящее для сравнения двух типов для равенства или порядок сортировки. Правила кодирования и последовательность сортировки для типов не определены и могут различаться между программами.