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