delphi: reference to(匿名方法)

正常函数类型的对象需在外部实现,单reference to可以在函数内实现,有子函数的效果。具体代码示例如下:
unit Unit6;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;
type
  TYDForm = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  YDForm: TYDForm;
implementation
{$R *.dfm}
Type
  TFun = function: string;
  TReferenceFun = reference to function: string;
function TestFun: string;
begin
  Result := '函数类型对象用法';
end;
procedure TYDForm.FormCreate(Sender: TObject);
var
  Fun: TFun;
  RFun: TReferenceFun;
  str: Integer;
begin
  RFun := function: string
  begin
    Result := '匿名函数reference用法';
  end;
  ShowMessage(RFun);
  Fun := TestFun;
  ShowMessage(Fun);
end;
end.

猜你喜欢

转载自blog.csdn.net/sndayYU/article/details/77401813