A Delphi Compiler verzióirányelvei

A fordító irányelvek olyan speciális szintaxis megjegyzések, amelyeket felhasználhatunk a Delphi fordító funkcióinak vezérlésére. A Delphi fordítónak három típusa van: sboszorkány-irányelvek, paraméter-irányelvek és feltételes irányelvek. A feltételes fordítás lehetővé teszi számunkra, hogy a forráskód részeit szelektíven összeállítsuk a beállított feltételektől függően.

Az DefName bemutatja az úgynevezett feltételes szimbólumot. Delphi számos szabványos feltételes szimbólumot definiál. A fenti "kódban", ha a DefName van megadva, akkor a fenti kódot $ Else összeáll.

A $ IfDef irányelv általános használata a Delphi fordító verziójának tesztelése. Az alábbi lista jelöli azokat a szimbólumokat, amelyeket ellenőrizni kell, ha a Delphi fordító adott verziójára feltételesen fordítunk:

Megjegyzés: A VER185 szimbólum például a Delphi 2007 fordító vagy egy korábbi verzió jelzésére szolgál.

Például a Delphi 5-ben bevezetett IncludeTrailingBackslash függvény hozzáad egy "\" karakterlánc végéhez, ha még nem létezik. A Delphi MP3 projektben ezt a funkciót használtam, és több olvasó panaszkodott, hogy nem tudják összeállítani a projektet - van néhány Delphi verziójuk a Delphi 5 előtt.

instagram viewer

A probléma megoldásának egyik módja a rutin saját verziójának - az AddLastBackSlash funkció - létrehozása. Ha a projektet a Delphi 5-en kell lefordítani, akkor az IncludeTrailingBackslash hívásra kerül. Ha a Delphi korábbi verzióinak valamelyikét használjuk, akkor az IncludeTrailingBackslash funkciót szimuláljuk.

A Delphi 2007 a VER180-at használja annak érdekében, hogy fenntarthassa a kompatibilitást a Delphi 2006-tal és azt követően hozzáteszi a VER185-et ahhoz a fejlesztéshez, amelynek kifejezetten a Delphi 2007 programot kell céloznia ok. Jegyzet: bármikor, amikor az egység felülete megváltoztatja az egységet használó kódot, újra kell fordítani.