type func = function (x:integer):integer;
这个函数没有函数名,它的方法怎么定义?

解决方案 »

  1.   

    是的,你可以:
    var MyFunction: func;
    就相当于:
    function MyFunction (x:Integer):Integer;
      

  2.   

    我的意思是函数内部的方法过程怎么写,希望能够举个简单的例子
    我也想找到,你看看vcl里的事件类定义都是用了这种方式,实现方法让Borland给隐藏了?
      

  3.   

    这只是一个类型而已,就如同:
    type
      TARec=record
        a:Intger;
        b:string;
      end;
    不需要你去实现它什么的。如果有一个变量:
    var
       myfunc:func;如果再有一个函数:
    function abc(x:integer):integer;
    begin
       Result:=abc*abc;
    end;那么:
       myfunc:=@abc;  //给 myfunc 赋值,与普通的赋值语句一样,不过是值的类型不同
       i:=myfunc(10);  //得到 i=100。