理解 Delphi 的类(十) - 深入方法[18] - 在接口区声明的方法都相当于提前声明了


//要点18: 如果函数在接口区定义了, 就无需用 forward 提前声明了

unit Unit1;



interface



uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;



type

  TForm1 = class(TForm)

    Button1: TButton;

    procedure Button1Click(Sender: TObject);

  end;



var

  Form1: TForm1;



{现在函数定义在接口区(interface)}

function MyFunA(x: Integer): Integer;

function MyFunB(x: Integer): Integer;





implementation



{$R *.dfm}



function MyFunA(x: Integer): Integer;

begin

  Result := MyFunB(x) * 3; {因为在接口区有了声明, 前面的函数就可以调用后的函数了}

end;



function MyFunB(x: Integer): Integer;

begin

  Result := Abs(x);

end;





{调用测试}

procedure TForm1.Button1Click(Sender: TObject);

var

  i: Integer;

begin

  i := MyFunA(-3);

  ShowMessage(IntToStr(i)); {9}

end;



end.


 
   

你可能感兴趣的:(Delphi)