Symboldeklarationen und Querverweise (Delphi)
Nach oben zu Liste der Delphi-Compiler-Direktiven - Index
Typ |
Option |
Syntax |
{$Y+}, {$Y-}, oder {$YD}; {$REFERENCEINFO ON}, {DEFINITIONINFO OFF} oder {$REFERENCEINFO OFF}, oder {DEFINITIONINFO ON} |
Vorgabe |
{$YD} {$DEFINITIONINFO ON} |
Bereich |
Global |
Bemerkungen
Die Direktive $Y steuert die Generierung von Symbolinformationen, die von der Projektverwaltung, vom Code-Explorer und vom Quelltext-Editor verwendet werden. Diese Informationen bestehen aus Tabellen, in denen die Zeilennummern des Quelltextes für alle Deklarationen der Bezeichner und (im Status {$Y+} ) auch für alle Verweise auf die Bezeichner in einem Modul enthalten sind. Bei Units sind die Informationen zusammen mit dem Objektquelltext der Unit in der .dcu-Datei enthalten. Symbolinformationen vergrößern die .dcu-Dateien, haben aber keine Auswirkungen auf die Größe oder Schnelligkeit des ausführbaren Programms.
Wenn ein Programm oder eine Unit im Standardstatus {$YD} (oder {DEFINITIONINFO ON}) compiliert wird, so zeichnet der Compiler Informationen über die Stelle auf, an der die einzelnen Bezeichner definiert sind. Bei den meisten Bezeichnern (Variablen, Konstanten, Klassen usw.) zeichnet der Compiler die Stelle auf, an der die jeweilige Deklaration steht. Bei Prozeduren, Funktionen und Methoden wird die Stelle aufgezeichnet, an der sich die Implementierung befindet. Dies ermöglicht das Suchen im Quelltext.
Wird ein Programm oder eine Unit im Status {$Y+} (oder {REFERENCEINFO ON}) compiliert, so zeichnet der Compiler Informationen darüber auf, wo die einzelnen Bezeichner verwendet werden und wo sie definiert sind. Dies ermöglicht die Verwendung der Seite Referenz im Projekt-Browser.
Wenn ein Programm oder eine Unit im Status {$Y-} (oder {DEFINITIONINFO OFF} bzw. {REFERENCEINFO OFF}) compiliert wird, so werden keine Symbolinformationen aufgezeichnet. Damit ist es nicht möglich, im Quelltext zu suchen oder auf die Seite Referenz des Projekt-Browsers zuzugreifen.
Der Schalter $Y wird normalerweise zusammen mit den Schaltern $D und $L eingesetzt, die die Generierung von Debug-Informationen bzw. von lokalen Symbolinformationen steuern. Die Direktive $Y wirkt sich nur aus, wenn die Schalter $D und $L aktiviert sind.
Hinweis: Die Generierung von Kreuzreferenz-Informationen ({$Y+}) kann die Compilier- und Linkzeiten beträchtlich erhöhen. Sie sollten diese Option daher nur aktivieren, wenn Sie die Seite Referenz der Projektverwaltung benötigen.