use warnings;
use strict;
my @array = (1,2,3,4,5);
my $v = 1;
sub by_ref
{
my ($array_ref,$v) = @_;
@$array_ref = (0,0,0);
print "Array inside by_ref: @$array_ref\n";
}
by_ref(\@array,$v);
print "Array changed: @$array\n";
我通過@array
通過引用(我假設我做對了)。我希望在子例程@array
中所做的更改反映在調用子例程中。我不知道我出錯的地方。 預先感謝您。perl傳遞參考
你是不是想改變列表?你也不要使用'$ v'。 – squiguy
對我來說,這兩個打印語句都有三個零。最後一個應該是「@array」而不是「@ $ array」。 – chooban
是的,我試圖改變列表... – Daanish