我有以下代码
use strict;
sub test {
my($greeting, @names) = @_;
my $returnString;
foreach my $name (@names) {
$returnString .= "$greeting, $name!\n";
}
return $returnString;
}
print &test("Hi", "Tim", "Tom", "Chris");
哪个输出
Hi Tim! Hi Tom! Hi Chris!
我希望能够添加多个数组。我尝试修改我的代码,如下所示
my(@greeting, @names) = @_;
print &test("Hi", "Tim", "Hello", "Tom", "Bye", "Chris");
但是我发现这是做不到的。从我所做的阅读中,我认为我需要将参数作为参考传递。
my($greeting, $names) = @_;
my @names = $names;
但我发现这只会输出 Hi Tim!
处理这种情况的最佳方法是什么?