Delphi-Klassendeklarationen (__declspec)
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.