Perlで型グロブとは
Perlで型グロブといえば変数名のワイルドカードと思えばいいのかな。
今のstrict・リファレンス時代(謎)では、すでに過去の悪の遺産ですか?
以下に、サブルーチン引数参照渡しのリファレンスと型グロブのサンプルです。
@a=(1,2,3);
@b=(4,5,6);
print "\@a=@a \@b=@b\n";
func1(\@a,\@b);
print "\@a=@a \@b=@b\n";
func2(*a,*b);
print "\@a=@a \@b=@b\n";
# リファレンス
sub func1 {
($ref_a,$ref_b)=@_;
foreach ( @$ref_a ){ $_++ }
foreach ( 0..$#{$ref_b} ){ $$ref_b[$_]++ }
}
# 型グロブ
sub func2 {
(*glob_a,*glob_b)=@_;
foreach ( @glob_a ){ $_++ }
foreach ( 0..$#glob_b ){ $glob_b[$_]++ }
}
http://www.tohoho-web.com/lng/199912/99120187.htm
ちなみに、$_には、何が入るかわかりますよね。