Perl再入門 | アルパカ本に学ぶリファレンス入門4 - 無名配列

無名配列を作る

my $ref;

{
  my @array = (2, 4, 6);
  $ref = \@array;
}

print "@$ref";  # 出力: 2 4 6
@arrayはブロックが終わったときに消滅しますが、$refはブロックが終わっても値を保持します。

このとき、$refは、「名前の無い配列」への「リファレンス」を格納しています。
$refが参照している名前の無い配列を「無名配列」といいます。
($ref自体は「無名配列」への「リファレンス」です。)

値を取り出すときは、通常の配列リファレンスと同じようにデリファレンスします。
print $ref->[1];  # 出力 4

print "@$ref";    # 出力 2 4 6
カテゴリ: