type TForm1 = class(TForm) Button1: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } a : String; end;
var Form1: TForm1;
implementation
{$R *.DFM}
{$DEFINE AAA}// 定义行。
procedure TForm1.FormCreate(Sender: TObject); begin a := ''''Other''''; {$IFDEF AAA} a := ''''AAA''''; {$ENDIF} {$IFDEF BBB} a := ''''BBB''''; {$ENDIF} end;
procedure TForm1.Button1Click(Sender: TObject); begin Caption := a; end;
然而,由于该类预编译指令只能作用于当前单元,所以不便之处在于不能在一个公共单元定义一次版本符号,而必须在各单元中定义统一版本符号才行,故此,在更换版本时,需要确定所有的版本符号都已改变,这样才能保证各版本的正确性,对此,可以使用Delphi IDE的“Find in Files…”(多个文件中查找字符串)的功能,找出所有定义版本符号的文件和位置,然后依次更改,保证所有位置已经改正。
一般是这样的:
{$HINTS OFF} <----OFF表示关闭 procedure Test; var I: Integer; begin end; {$HINTS ON} <----ON表示打开