Object Pascal-Klassendeklarationen (__declspec)

Aus Appmethod Topics
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 Object Pascal-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 Object Pascal implementiert wurde. Dieser Modifizierer erscheint in der Object Pascal-Portabilitäts Header-Datei mit einer Dateierweiterung .hpp.

Hinweis:  Das Argument delphireturn wird verwendet, um C++ Klassen für die Object Pascal-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.

  • Object Pascal-kompatible RTTI
  • Object Pascal-kompatibles Konstruktor-/Destruktor-Verhalten
  • Object Pascal-kompatible Exception-Behandlung

Eine Object Pascal-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 Object Pascal abgeleitet wurden, nicht automatisch zur Verfügung.
  • Sie muss als public von einer anderen Object Pascal-Klasse geerbt werden.

Siehe auch