Spezielle Compiler-Direktiven für Packages
Nach oben zu Packages compilieren
Die folgende Tabelle enthält spezielle Compiler-Direktiven für Packages, die in den Quelltext eingefügt werden können.
Spezielle Compiler-Direktiven für Packages:
C++-Direktive | Beschreibung |
---|---|
#pragma package(smart_init) |
Diese Direktive stellt sicher, dass die gepackten Units in der Reihenfolge initialisiert werden, die durch ihre Abhängigkeiten festgelegt ist. (Sie wird standardmäßig in die Quelldatei eines Package eingebunden.) |
#pragma package(smart_init, weak) |
Mit dieser Direktive wird eine Unit schwach eingebunden. Siehe (Direktive in die Quelltextdatei der Unit einfügen.) |
Delphi-Direktive | Beschreibung |
---|---|
{$IMPLICITBUILD OFF} |
Verhindert, dass ein Package in Zukunft implizit neu compiliert wird. Diese Direktive wird in .dpk-Dateien verwendet, wenn Packages mit Low-Level-Funktionen compiliert werden, die sich nur selten ändern, oder wenn der Quelltext des Package nicht weitergegeben wird. |
{$G} oder {$IMPORTEDDATA OFF} |
Deaktiviert die Erstellung von Referenzen auf importierte Daten. Diese Direktive führt zu schnelleren Speicherzugriffen, verhindert aber, dass die Unit, in der sie verwendet wird, Variablen in anderen Packages referenzieren kann. |
{$WEAKPACKAGEUNIT ON} |
Die Unit wird schwach eingebunden. Einzelheiten finden Sie unter Verwendung des schwachen Packens. |
{$DENYPACKAGEUNIT ON} |
Verhindert, dass die Unit in ein Package eingebunden wird. |
{$DESIGNONLY ON} |
Das Package wird für die Installation in der IDE compiliert. (Nur in .dpk-Dateien.) |
{$RUNONLY ON} |
Das Package wird nur als Laufzeit-Package compiliert. (Nur in .dpk-Dateien.) |
- Wenn Sie die Compiler-Direktive {$DENYPACKAGEUNIT ON} im Quelltext verwenden, wird die Unit nicht in das Package aufgenommen.
- Die Angabe von {$G-} oder {$IMPORTEDDATA OFF} kann bewirken, dass das Package nicht zusammen mit anderen Packages in derselben Anwendung verwendet werden kann. Packages, die mit der Direktive {$DESIGNONLY ON} compiliert wurden, enthalten zusätzlichen Quelltext, der von der IDE benötigt wird. Derartige Packages sollten in normalen Anwendungen nicht verwendet werden.
- Bei Bedarf können auch andere Compiler-Direktiven in den Quelltext eines Package aufgenommen werden. Unter Compiler-Direktiven finden Sie Informationen, die hier nicht erläutert werden.
Weitere Direktiven, die in allen Bibliotheken einsetzbar sind, werden unter Packages und DLLs erstellen beschrieben.