delphi的参数传址 标志为var修辞变量名。
function DoubleVal (Val: Integer) : Integer;
begin
Val := Val * 2;
Result := Val;
end;
function DoubleRef (var Val: Integer): Integer;
begin
Val := Val * 2;
Result := Val;
end;
调用:
var
I, J: Integer;
begin
I := 2;
J := DoubleVal (I); // I = 2; J = 4;
//如果调用下面的话,
// J := DoubleRef (I); // I = 4; J = 4; i的值改变了
begin
Val := Val * 2;
Result := Val;
end;
function DoubleRef (var Val: Integer): Integer;
begin
Val := Val * 2;
Result := Val;
end;
调用:
var
I, J: Integer;
begin
I := 2;
J := DoubleVal (I); // I = 2; J = 4;
//如果调用下面的话,
// J := DoubleRef (I); // I = 4; J = 4; i的值改变了