delphi 函数参数传递 默认参数(传值)、var(传址)、out(输出)、const(常数)四类

参数能够分为: 默认参数(传值)、var(传址)、out(输出)、const(常数)四类测试

 

{默认参数是传值, 不会被改变}优化

function MyF1(x: Integer): Integer;orm

begin编译器

  Inc(x);io

  Result := x;编译

end;function

 

{var参数是传址, 会被改变}co

function MyF2(var x: Integer): Integer;参数

beginconst

  Inc(x);

  Result := x;

end;

 

{out参数是为支持Com的, 和 var 的结果是同样的, 通常咱们用不着它}

function MyF3(out x: Integer): Integer;

begin

  Inc(x);

  Result := x;

end;

 

{const参数是绝对不能够赋值的, 这是被编译器优化的方式, 尽可能多用}

function MyF4(const x: Integer): Integer;

begin

  //Inc(x); {这句会出错, 由于带 const 前缀的参数是不能够更改的}

  Result := x;

end;

 

 

//调用测试

procedure TForm1.Button1Click(Sender: TObject);

var

  a: Integer;

begin

  a := 6; MyF1(a);

  ShowMessage(IntToStr(a));  //6

  a := 6; MyF2(a);

  ShowMessage(IntToStr(a));  //7

  a := 6; MyF3(a);

  ShowMessage(IntToStr(a));  //7

  a := 6; MyF4(a);

  ShowMessage(IntToStr(a));  //6

end;

相关文章
相关标签/搜索