Schau in der Hilfe nach. Das sind übrigens nicht alles Schalter, das sind auch andere Direktiven, z.B. IFDEF, mit dem man eine bedingte Kompilierung erreichen kann.
Delphi-Quellcode:
{$IFDEF Win32}
LB: String=#13#10;
LOGFILE='
./log.txt';
{$ELSE}{$IFDEF MACOS}
LB: String=#13;
LOGFILE='
./log';
{$ELSE}
LB: String=#10;
LOGFILE='
./log';
{$ENDIF}
{$ENDIF}
Das ist z.B. eine Anwendungsmöglichkeit. Ich überprüfe, unter welchem Betriebssystem kompiliert wird.
Wenn es unter Windows kompiliert wird, wird LB (Line Break, also Zeilenumbruch) auf #13#10 gesetzt, wie es unter Windows normal ist. Der Dateiname des Logs ist log.txt. Unter Mac wird LB auf #13 gesetzt und der Logdateiname ist log. Ansonsten nehme ich ein unixoides System an und setze LB auf #10 und den Logdateinamen wieder auf log.
Mit den Schaltern kannst du vor allem den Compiler und den Linker beeinflussen, die Standardeinstellung ist hierbei meistens das beste. Beim Debuggen kann es aber manchmal ganz nützlich sein, die Optimierung mit {$O-} auszuschalten.