Allgemeine Typinformationen

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Mit RTTI arbeiten

Alle RTTI-Objekte sind Nachkommen der Klasse TRttiObject. Für RTTI-Objekte, die Typen beschreiben, ist TRttiType der wichtigste Vorfahre. Diese beiden Basisklassen stellen eine große Anzahl von Methoden und Eigenschaften bereit, die auf fast alle Typen und Typ-Member angewendet werden können, die über RTTI-Informationen verfügen.

Zu den gemeinsamen Informationen für alle RTTI-fähigen Typen und Membern zählen:

  • HandleRttiDataSize: stellen einen Zeiger auf eine Arbeitsspeicherposition bereit, an der RTTI-Daten gespeichert werden, und geben darüber hinaus die Blockgröße an.
  • Parent: legt das übergeordnete RTTI-Objekt fest. Das übergeordnete Objekt ist nur für RTTI-Objekte sinnvoll, die strukturierte Typen beschreiben, die sich aus mehreren Teilen zusammensetzen, wobei jeder Teil über eigene RTTI-Informationen verfügt.
  • Package: enthält Informationen über das übergeordnete Package, in dem das betreffende Element gespeichert ist.
  • GetAttributes: gewährleistet den Zugriff auf Annotationsattribute für den betreffenden Typ oder Typ-Member.
  • Name: stellt den Zugriff auf den Namen des betreffenden Typs oder Typ-Members bereit.

RTTI-Objekte, die Typen beschreiben, erweitern die bereitgestellten Informationen durch Folgendes:

  • QualifiedName: gibt den qualifizierten Namen des Typs zurück.
  • TypeKind: überprüft die Typart.
  • TypeSize: gibt die Größe einer Variable dieses Typs an.
  • BaseType: ist nur für Typen sinnvoll, die eine Abstammung haben, wie z.B. Klassen und Interfaces.
  • Eine Fülle von Methoden zum Abfragen von Typ-Membern (steht nur für strukturierte Typen zur Verfügung, die Member zulassen).

Die folgenden Themen beschreiben die spezialisierten RTTI-Objekte. Jedes spezialisierte RTTI-Objekt fügt zusätzlich zu den geerbten, weitere Eigenschaften und Methoden hinzu.

Siehe auch

Codebeispiele