Direktivy kompilátoru jsou speciální syntaktické komentáře, které můžeme použít k ovládání funkcí kompilátoru Delphi. Kompilátor Delphi má tři typy direktiv: sdirektivy čarodějnic, direktivy parametrů a podmíněné direktivy. Podmíněné kompilace nám umožňuje selektivně kompilovat části zdrojového kódu v závislosti na nastavených podmínkách.
DefName představuje tzv. podmíněný symbol. Delphi definuje několik standardních podmíněných symbolů. V "kódu" výše, pokud je DefName definován výše uvedený kód $ Else zkompiluje se.
Běžné použití směrnice $ IfDef spočívá v testování verze kompilátoru Delphi. Následující seznam ukazuje symboly, které je třeba zkontrolovat při podmíněném kompilaci pro konkrétní verzi kompilátoru Delphi:
Poznámka: Například symbol VER185 se používá k označení kompilátoru Delphi 2007 nebo starší verze.
Například funkce IncludeTrailingBackslash, představená v Delphi 5, přidá na konec řetězce "\", pokud tam již není. V projektu Delphi MP3 jsem tuto funkci využil a několik čtenářů si stěžovalo, že nemohou projekt zkompilovat - mají nějakou verzi Delphi před Delphi 5.
Jedním ze způsobů, jak tento problém vyřešit, je vytvoření vlastní verze této rutiny - funkce AddLastBackSlash. Pokud by měl být projekt zkompilován na Delphi 5, je volána IncludeTrailingBackslash. Pokud jsou použity některé z předchozích verzí Delphi, simulujeme funkci IncludeTrailingBackslash.
Delphi 2007 používá VER180 k udržení nepřetržité kompatibility s Delphi 2006 a poté přidává VER185 za účelem vývoje, který musí konkrétně zacílit na Delphi 2007 na cokoli důvod. Poznámka: kdykoli rozhraní jednotky změní kód, který tuto jednotku používá, musí být znovu kompilován.