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

2017-12-21 10:31:15来源:oschina作者:geek_loser人点击

分享

参数可以分为: 默认参数(传值)、var(传址)、out(输出)、const(常数)四类

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


function MyF1(x: Integer): Integer;


begin


Inc(x);


Result := x;


end;

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


function MyF2(var x: Integer): Integer;


begin


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;

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台