6
我有這樣的代碼,工程可以在不首先聲明變量的情況下進行引用?
my @new = keys %h1;
my @old = keys %h2;
function(\@new, \@old);
但它可以被,而不必首先聲明變量做了什麼?
function
必須有其參數參考。
我有這樣的代碼,工程可以在不首先聲明變量的情況下進行引用?
my @new = keys %h1;
my @old = keys %h2;
function(\@new, \@old);
但它可以被,而不必首先聲明變量做了什麼?
function
必須有其參數參考。
use strict;
use Data::Dumper;
my %test = (key1 => "value",key2 => "value2");
my %test2 = (key3 => "value3",key4 => "value4");
test_sub([keys %test], [keys %test2]);
sub test_sub{
my $ref_arr = shift;
my $ref_arr2 = shift;
print Dumper($ref_arr);
print Dumper($ref_arr2);
}
輸出:
$VAR1 = [
'key2',
'key1'
];
$VAR1 = [
'key4',
'key3'
];
function([ keys %h1 ], [ keys %h2 ]);
可以 使用方括號來創建一個匿名數組的引用:
$數組引用= [1,2,[ 'A', 'B' , 'C']];
爲什麼你不試一試呢? – Ingo 2011-04-08 10:05:41
因爲你不知道該怎麼嘗試,所以不能「試一試」呢? – cHao 2011-04-08 10:38:10
她至少可以試圖用RHS上的表達來代替@new和@old。然後,如果perl抱怨,她可能會問爲什麼以及如何防止它。 – Ingo 2011-04-08 10:48:54