只是函数中的参数是函数类型!
以下是示例。
function power2(x:integer):integer;
begin
result:=x*x;
end;
function power3(x:integer):integer;
begin
result:=x*x*x;
end;
type
Tpower=function (x:integer):integer;
function getPower(f:TPower;x:integer):integer;
//这里的 f 就是一个回调函数
begin
Result:=f(x);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(inttostr(getPower(power2,3)));
showmessage(inttostr(getPower(power3,3)));
end;