Delphi條件編譯時編譯器的版本號
阿新 • • 發佈:2018-11-25
更早的版本忽略,我們從2006開始記錄,相應的版本號判斷方式:
VER180 : Delphi 10.0 CodeGear 2006/2007
VER185 : Delphi 11.0 CodeGear 2007
VER190 : Delphi 12.0 CodeGear 2008
VER200 : Delphi 13.0 CodeGear 2009
VER210 : Delphi 14.0 Embarcadero RAD Studio 2010
VER220 : Delphi 15.0 Embarcadero RAD Studio XE
VER230 : Delphi 16.0 Embarcadero RAD Studio XE2
VER240 : Delphi 17.0 Embarcadero RAD Studio XE3
VER250 : Delphi 18.0 Embarcadero RAD Studio XE4|
VER260 : Delphi 19.0 Embarcadero RAD Studio XE5
VER270 : Delphi 20.0 Embarcadero RAD Studio XE6
VER280 : Delphi 21.0 Embarcadero RAD Studio XE7
VER290 : Delphi 22.0 Embarcadero RAD Studio XE8
{$IFDEF VERxxx} 程式碼 {$ELSE} 否則 {$ENDIF}
1 2 3 4 5 6 7 8 9 | {$IFDEF VERxxx} 程式碼 {$ELSE} 否則 {$ENDIF} |
我們還可以直接判斷版本號(RTLVersion)值的方式,注意是兩位整數,象VER185要寫成RTLVersion=18.5而不是185:
{$IF RTLVersion>=18}//2006+ 程式碼 {$ELSE} 程式碼 {$IFEND}1 2 3 4 5 | {$IF RTLVersion>=18}//2006+ 程式碼 {$ELSE} 程式碼 {$IFEND} |
注意不知道從什麼版本開始IFEND就統一成ENDIF了,編譯器會有警告,不過如果要和早期的版本相容,可以開啟下面的開關:
{$LEGACYIFEND ON}1 | {$LEGACYIFEND ON} |
就沒有問題了。