プロトタイプを使ってサブルーチンに複数のリストを渡す

back
--
sub print_a_list(\@\@) {
  my $list1 = shift;
  my $list2 = shift;
  foreach my $a (@$list1) {
    print "$a\n";
  }
}
--

サブルーチン定義の際に、引数として渡される変数のtypeを[配列のリファレンス]として指定しておくと、
呼び出し側ではリファレンスではなく、配列で指定できる。

--
@array1 = (1,2,3);
@array2 = (4,5,6);
print_a_list(@array1, @array2);
--

呼び出し側では二つの配列を渡しているが、呼び出されるサブルーチンでは、2つの配列のリファレンスとなる。


back