„Delphi“ kompiliatorių versijų direktyvos

Kompiliatoriaus nurodymai yra specialūs sintaksės komentarai, kuriuos galime naudoti norėdami valdyti Delphi kompiliatoriaus ypatybes. „Delphi“ kompiliatorius turi trijų tipų direktyvas: sraganų, parametrų ir sąlyginių direktyvų. Sąlyginis kompiliavimas leidžia selektyviai sudaryti šaltinio kodo dalis, atsižvelgiant į nustatytas sąlygas.

„DefName“ pateikia vadinamąjį sąlyginį simbolį. Delphi apibrėžia keletą standartinių sąlyginių simbolių. Aukščiau esančiame „kode“, jei „DefName“ yra apibrėžtas, nurodykite aukščiau esantį kodą Dolerių tampa kompiliuotas.

Įprasta $ IfDef direktyvos paskirtis yra išbandyti Delphi kompiliatoriaus versiją. Šiame sąraše nurodyti simboliai, kuriuos reikia patikrinti, kai sąlyginai sudaroma tam tikra „Delphi“ kompiliatoriaus versija:

Pastaba: pavyzdžiui, simbolis VER185 yra naudojamas žymėti „Delphi 2007“ kompiliatorių arba ankstesnę versiją.

Pavyzdžiui, „IncludeTrailingBackslash“ funkcija, įdiegta „Delphi 5“, eilutės pabaigoje prideda „\“, jei jos dar nėra. Projekte „Delphi MP3“ aš pasinaudojau šia funkcija ir keli skaitytojai skundėsi, kad negali sudaryti projekto - jie turi kažkokią „Delphi“ versiją iki „Delphi 5“.

instagram viewer

Vienas iš būdų išspręsti šią problemą yra sukurti savo šios rutinos versiją - „AddLastBackSlash“ funkciją. Jei projektas turėtų būti sudaromas „Delphi 5“, vadinama „IncludeTrailingBackslash“. Jei naudojamos kelios ankstesnės „Delphi“ versijos, mes imituojame funkciją „IncludeTrailingBackslash“.

„Delphi 2007“ naudoja VER180, kad išlaikytų nepriekaištingą suderinamumą su „Delphi 2006“ ir vėliau prideda VER185, kad galėtų vystytis, kuriai konkrečiai reikia skirti „Delphi 2007“ priežastis. Pastaba: kiekvieną kartą, kai vieneto sąsaja keičia kodą, kuris naudoja tą vienetą, reikia iš naujo sudaryti.