Delphi-Klassendeklarationen (__declspec)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Klassen - Index

Syntax

__declspec(<decl-modifier>)

Beschreibung

Das Argument decl-modifier kann delphiclass oder pascalimplementation sein. Diese Argumente sollten nur in Klassen verwendet werden, die von Delphi-Klassen folgendermaßen abgeleitet wurden.

  • Sie müssen __declspec(delphiclass) für alle forward-Deklarationen von Klassen verwenden, die direkt oder indirekt von TObject abgeleitet wurden.
  • Verwenden Sie den Modifizierer __declspec(pascalimplementation) um anzuzeigen, dass eine Klasse in Delphi implementiert wurde. Dieser Modifizierer erscheint in der Delphi-Portabilitäts Header-Datei mit einer Dateierweiterung .hpp.

Hinweis:  Das Argument delphireturn wird verwendet, um C++ Klassen für die Delphi-kompatible Behandlung in Funktionsaufrufen als Parameter und Rückgabewerte zu markieren.

Das Argument delphiclass wird für die Erzeugung von Klassen verwendet, die die folgende VCL-Kompatibilität haben.

  • Delphi-kompatible RTTI
  • Delphi-kompatibles Konstruktor-/Destruktor-Verhalten
  • Delphi-kompatible Exception-Behandlung

Eine Delphi-kompatible Klasse hat folgende Einschränkungen.

  • Es sind keine virtuellen Basisklassen oder mehrfach-Vererbung erlaubt.
  • Sie müssen dynamisch mit dem globalen Operator new erzeugt werden.
  • Kopier- und Zuweisungs-Konstruktoren müssen explizit definiert werden. Der Compiler stellt diese Konstruktoren für Klassen, die von der Delphi abgeleitet wurden, nicht automatisch zur Verfügung.
  • Sie muss als public von einer anderen Delphi-Klasse geerbt werden.

Siehe auch