Delphi関数パラメータ伝達デフォルトパラメータ(伝達)、var(貫通)、out(出力)、const(定数)の4種類

1280 ワード

Delphiのパラメータは、デフォルトパラメータ(値伝達)、var(アドレス伝達)、out(出力)、const(定数)の4種類に分けられます
 
C/C++に関する知識、類比学習を比較することができます.
 
  1.デフォルトのパラメータは値を伝達し、変更されません.例
function MyFun(x : Integer) : Integer;

begin

    Inc(x);

    Result := x;

end;


  2.varパラメータはアドレスであり、変更されます.例
function MyFunVar(var x : Integer) : Integer;

begin

    Inc(x);

    Result := x;

end;


  3.outパラメータはComをサポートするため、varの結果と同じで、一般的には
function MyFunOut(out x : Integer) : Integer;

begin

    Inc(x);

    Result := x;

end;


  4.constパラメータは絶対に値を付けてはいけません.これはコンパイラによって最適化された方法で、できるだけ多く使用します.
function MyFunConst(const x : Integer) : Integer;

begin

    Inc(x);    //     ,   const             

    Result := x;

end;


  
 
これらの関数を呼び出すテストを次に行います.
procedure TForm1.Button1Click(Sender : TObject);

var

   a : Integer;

begin

    a := 5;

    MyFun(a);

    ShowMessage(IntToStr(a));    //6

    

    a := 6;

    MyFunVar(a);

    ShowMessage(IntToStr(a));    //7



    a := 6;

    MyFunOut(a);

    ShowMessage(IntToStr(a));    //7



    a := 6;

    MyFunConst(a);

    ShowMessage(IntToStr(a));    //6,   MyFunConst      const       



end;