使用 arrayref 将数组传递给 sub
@foo
的 arrayref 是\@foo
。如果你需要将数组和其他内容传递给子例程,这很方便。传递 @foo
就像传递多个标量一样。但是传递\@foo
只是一个标量。在子程序内:
xyz(\@foo, 123);
...
sub xyz {
my ($arr, $etc) = @_;
print $arr->[0]; # using the first item in $arr. It is like $foo[0]