__declspec(dllexport)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Schlüsselwörter alphabetisch - Index


Kategorie

Modifizierer, Schlüsselwort-Erweiterungen, Speicherklassenspezifizierer

Syntax

__declspec( dllexport ) declarator

Das Speicherklassenattribut dllexport dient der Kompatibilität mit den Microsoft-Sprachen C und C++. Mit ihm können Funktionen, Daten und Objekte aus einer DLL exportiert werden. Das Speicherklassenattribut dllexport kann für eine Funktion oder template-Klasse angewendet werden. In diesem Fall wird es für jede Spezialisierung dieser template-Klasse verwendet.

Dieses Attribut definiert das DLL-Interface explizit für die Clients (die ausführbare Datei oder eine andere DLL). Durch das Deklarieren von Funktionen als dllexport wird keine Moduldefinitionsdatei (DEF), zumindest hinsichtlich der Spezifikation der exportierten Funktionen, benötigt. Wenn eine Klasse als dllexport gekennzeichnet ist, wird jede Inline-Funktion in der Klasse mit einem Out-of-line-Rumpf generiert, so dass sie von außerhalb ihrer definierenden DLL aufgerufen werden kann.

Hinweis: dllexport ersetzt das Schlüsselwort __export insofern, als es eine einfache Möglichkeit zum Exportieren von Funktionen ohne die Notwendigkeit einer .DEF-Datei bereitstellt, was gleichzeitig zur Optimierung des Codes beiträgt.

Siehe auch