__declspec(delphirecord)
Nach oben zu Schlüsselwörter alphabetisch - Index
Kategorie
Modifizierer, Schlüsselwort-Erweiterungen, Speicherklassenspezifizierer
Syntax
__declspec( delphirecord ) declarator
Das Speicherklassenattribut delphirecord wird beim Konvertieren von Delphi-Records in C++-Klassen/Strukturen in .hpp-Headern (mit dcc32 -JPHNE <Dateiname.pas>) verwendet. In Delphi gibt es eine Konvention bezüglich Records, die von Funktionen zurückgegeben werden, die besagt, dass eine solche Funktion einen verborgenen Parameter zurückgibt, der auf den zurückzugebenden Record zeigt. Delphi gibt einen Zeiger auf eine Position zurück, die mit 0 initialisiert ist; in C++ gibt es eine derartige Garantie nicht. Wenn C++ eine Struktur findet, die von einer Funktion zurückgegeben wird und die als __declspec(delphirecord) gekennzeichnet ist, füllt es aus Übereinstimmungsgründen die Speicherposition mit Null auf.
Hinweis: Es gibt einen speziellen Fall, für den Benutzer eine __declspec(delphirecord)-Struktur explizit deklarieren sollten: für einen ursprünglich in Delphi deklarierten Record mit der Direktive {$EXTERNALSYM} oder {$NODEFINE}.