perlの配列渡しで、リファレンスでサブルーチンに渡すことを試す。
サンプルとしては、以下。
--
#! /bin/perl
sub test {
my ( $ref, $ref_count ) = @_;
print "test:@org reference = ", $ref, "\n";
print "test:@org reference = ", $ref_count, "\n";
print "test:@org reference = ", @$ref, "\n";
print "test:@org reference = ", @$ref[0], "\n";
}
my @org = ( 1, 2, 3, 4, 5 );
my $org = @org;
&test( \@org, $org );
print "main:@org reference = ", \@org, "\n";
print "main:@org reference = ", $org, "\n";
--
要点としては以下。
・リファレンスを渡す場合、配列の前に\をつける。
@aaa -> \@aaa
・配列の数は、どうやら別途渡してやらないとサブルーチンではいくつの配列か判らないっぽい。
$aaa = @aaa で配列数をカウントし、サブルーチンに渡す。
・