Freigeben über


Importieren und Exportieren von Inlinefunktionen

Aktualisiert: November 2007

Importierte Funktionen können als Inlinefunktionen definiert werden. Der Effekt ist ungefähr derselbe wie bei der Definition einer Standardfunktion als Inlinefunktion. Aufrufe der Funktion werden, ähnlich wie bei einem Makro, als Inlinecode erweitert. Diese Methode stellt eine hilfreiche Möglichkeit dar, C++-Klassen in einer DLL zu unterstützen, die einige ihrer Memberfunktionen zur Effizienzsteigerung inline umsetzen.

Ein Feature einer importierten Inlinefunktion besteht darin, dass ihre Adresse in C++ verwendet werden kann. Der Compiler gibt die Adresse der Kopie der Inlinefunktion zurück, die sich innerhalb der DLL befindet. Ein weiteres Feature importierter Inlinefunktionen besteht darin, dass Sie, anders als bei globalen importierten Daten, statische lokale Daten der importierten Funktion initialisieren können.

Vorsicht:

Beim Bereitstellen importierter Inlinefunktionen sollten Sie Sorgfalt walten lassen, da u. U. Versionskonflikte entstehen können. Eine Inlinefunktion wird als Anwendungscode erweitert. Wenn Sie die Funktion später neu schreiben, wird sie daher nur aktualisiert, wenn die Anwendung selbst neu kompiliert wird. (Normalerweise können DLL-Funktionen aktualisiert werden, ohne dass die Anwendungen, von denen sie verwendet werden, neu erstellt werden müssen.)

Was möchten Sie tun?

Siehe auch

Konzepte

Importieren und Exportieren