Delphi方法重载

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Buttons;

type
  TForm1 = class(TForm)
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);

  private
      Function Maxi(i,y:integer):integer;overload;
    Function Maxi(i,x,y:integer):integer;overload;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
Function TForm1.Maxi(i,y:integer):integer;
 begin
   if i>y then Result:=i else Result:=y;
 end;

Function TForm1.Maxi(i,x,y:integer):integer;
 Var
   s:integer;
 begin
   if i>y then s:=i else s:=y;
   if s>x then Result:=s else Result:=x;
 end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
 Showmessage('10和12的最大值是:'+INTTOSTR(maxi(10,12)));
end;

procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
  Showmessage('10和12,15的最大值是:'+INTTOSTR(maxi(10,12,15)));
end;

end.

 重载:可以通相同的名字,但不同的参数声明多个例程,来重载一个例程名称.为了声明重载例程,使用overload指令.

原文地址:https://www.cnblogs.com/wuxi15/p/3388955.html