Laufzeit-Typinformationen

Laufzeittypinformationen (Run-Time Type Information, RTTI) sind ein Mechanismus, mit dem der Typ eines Objekts während der Programmausführung bestimmt werden kann. Laufzeittypinformationen wurden zur Programmiersprache C++ hinzugefügt, da viele Anbieter von Klassenbibliotheken diese Funktion selbst implementiert haben. Dies verursachte Inkompatibilitäten zwischen Bibliotheken. Deshalb wurde es offensichtlich, dass eine Unterstützung der Laufzeittypinformationen auf Sprachebene erforderlich war.

Aus Gründen der Übersichtlichkeit wird die Erläuterung der Laufzeittypinformationen nahezu ausschließlich auf Zeiger beschränkt. Jedoch gelten die erläuterten Konzepte auch für Verweise.

Es gibt drei primäre Sprachelemente von C++ zur Ausführung von Laufzeittypinformationen:

  • Der dynamic_cast-Operator .

    Wird zur Konvertierung von polymorphen Typen verwendet.

  • Der Typeid-Operator .

    Wird zum Kennzeichnen des genauen Typ eines Objekts verwendet.

  • Die type_info Klasse.

    Wird verwendet, um die vom typeid Operator zurückgegebenen Typinformationen zu enthalten.

Siehe auch

Umwandlung