Сведения о типах времени выполнения

Информация о типах времени выполнения (RTTI) — это механизм, позволяющий определить тип объекта во время выполнения программы. Функция RTTI была добавлена в язык C++, поскольку многие поставщики библиотек классов реализовывали ее самостоятельно. Это приводило к проблемам совместимости между библиотеками. Таким образом, стало очевидно, что необходима поддержка информации о типах времени выполнения на уровне языка.

Для ясности этот раздел о RTTI почти полностью посвящен указателям. Однако рассматриваемые понятия также применяются ко ссылкам.

Существует три основных элемента языка C++ для информации о типах времени выполнения.

  • Оператор dynamic_cast.

    Используется для преобразования полиморфных типов.

  • Оператор typeid.

    Используется для указания точного типа объекта.

  • Класс type_info.

    Используется для хранения информации о типе, возвращенной оператором typeid.

См. также

Ссылки

Приведение