在编程计算过程中遇到一类函数,是多个返回值的函数。举例说明如下:
已知参数:Acc,mn,z,Beta,b,k,DaK,可以求出下列参数的数值:
  (1)d=m*z;
  (2)da:=b*k;
  (3)df:=……
问题是:想做一个自定义函数,只要定义好输入参数的数值,可以返回d,da,df等一系列的数值。
请问怎么定义这个自定义函数?

解决方案 »

  1.   

    function selectchan(var a,b:integer):integer; 
    begin   
    end; a,b调用这个后值会变,也就相当于返回值 了么还有一种方法就是:用procedure selectchan(a:integer;Var Result1:TType1;Var Result2:TType2); 
    或者构造一个记录结构 
    TResult=record 
     Result1:TType1; 
     Result2:TType2; 
    end; 
    然后 function selectchan(a:integer):TResult; 
      

  2.   

       定义一个记录
      ta=record
        d: single;
        df:
        da:
      end;
      或
      
      

  3.   

    用procedure selectchan(a:integer;Var Result1:TType1;Var Result2:TType2); 
    或者构造一个记录结构 
    TResult=record 
    Result1:TType1; 
    Result2:TType2; 
    end; 
    然后 function selectchan(a:integer):TResult; 
      

  4.   

    procedure getmax(out m,n,i:integer)
      

  5.   

    function myfunction(i : integer;var Result1 : Integer;var Result2:Integer;Result3 ):Integer;
    这个函数有四个返回值
    注意在用var定义一个形参的时候 这个形参就相当于一个反回值了
      

  6.   

    一般的用这个方法最简单
    function myfunction(i : integer;var Result1 : Integer;var Result2:Integer;Result3 ):Integer; 
    但还是要根据返回值之间的关系,来确定用结构体、数组等