delphi编程什么时候使用函数?什么时候使用过程呢?或者说delphi中函数与过程的根本区别是什么?

解决方案 »

  1.   

    “函数”(function)至少拥有一个返回值,调用者可能关心也可能不关心函数的返回值,函数必须提供至少一个具有特定意义的结果。
    “过程”(procedure)对于调用者并不关心实际的执行过程及执行结果。
      

  2.   

    虽然通过“过程”也可以返回结果,但是对于需要拿“过程”的结果来赋值给某一个变量或者另一个过程/函数的时候,就没有函数来得方便。
    比如:
    function GetRet_Function;
    begin
      result := 1000;
    end;procedure GetRet_Procedure(var iRet);
    begin
      iRet := 1000;
    end;使用函数:
    begin
      CallNextFunction(GetRet_Function);
    end;
    使用过程:
    var
      iRet: Integer;
    begin
      GetRet_Procedure(iRet);
      CallNextFunction(iRet);
    end;