dupValue
简述
返回一份value的复制值,一般无需要使用,特别用于不需要变参的函数调用。
例如function abcd(var a:Integer;b:Integer):String
倘若我们不希望修改第一个参数,则我们可如此调用:abcd(dupvalue(a),b)
dupValue(value:Any):Any;
名称 | 类型 | 说明 |
---|
value | Any | 任意类型,被复制的数据 |
返回 | Any |
任意类型,数据的副本。 |
//主函数
function test1();
begin
a:=1;
b:=2;
c:=3;
d:=test2(dupValue (a),b,c);
return array(a,b,c,d);
end;
//返回array(1,20,3,33)
//被调用函数
function test2(a,b,c);
begin
a:=10;
b:=20;
return a+b+c;
end;
由test1执行出来的结果可以知道,a变量,由于使用了dupValue复制值,虽然在子函数test2中改变了其值,但在主函数中的a变量仍然没变。而b变量则发生了改变。