__declspec(delphirecord)

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

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 Object Pascal-Records in C++-Klassen/Strukturen in .hpp-Headern (mit dcc32 -JPHNE <Dateiname.pas>) verwendet. In Object Pascal 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. Object Pascal 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 Object Pascal deklarierten Record mit der Direktive {$EXTERNALSYM} oder {$NODEFINE}.

Siehe auch