传递引用而非副本

1.传递引用参数

传递引用能免去传入参数时的复制操作。

2.返回引用参数

既然传递引用能免去传入参数时的复制操作,那么返回数据时同样也可以采取传递引用的方式返回。

当然我们也可以在子程序中返回多个数据,就和给子程序传递参数一样,以便区分:

my ($array_ref,$hash_ref) = make_data_structure();
sub  make_data_structure{
    # ......
   return \@array,\%hash;

}

3.用local * 对引用参数本地化

sub max_v_local {
  local (*a,*b) = @_ ;
 my $n = @a>@b ? @a: @b;
 .......
}
原文地址:https://www.cnblogs.com/tjxwg/p/3021691.html