Perlゼミ

  1. Perl
  2. 演算子
  3. here

無名ハッシュ生成子 - ハッシュのリファレンスを作成

Perlには無名ハッシュ生成子「{}」という演算子があります。名前はちょっと難しいですが、実用的には、簡単にハッシュのリファレンスを作成するためのものです。

無名ハッシュ生成子を使うと、以下のように簡単にハッシュのリファレンスが作成できます。

# 無名ハッシュ生成子
my $point = {x => 1, y => 2};

もし無名ハッシュ生成子を使わない場合は、次のように書きます。まずハッシュを作成してから、リファレンス生成子を使って、ハッシュのリファレンスを作成します。

# 無名ハッシュ生成子を使わない場合
my %point = (x => 1, y => 2);
my $point = \%point;

無名ハッシュ生成子を使うと、上の処理を省略して書くことができるんです。{x => 1, y => 2}を見た時は、上の処理が省略されているという感覚を持つと理解しやすいと思います。

どうして「無名ハッシュ生成子」というの?

無名ハッシュ生成子を使うと「%point」というハッシュを作成する必要がありませんね。つまり、内部的に「%point」に該当する「無名のハッシュ」が作成されているのです。

きっと、この部分に焦点を当てて命名されたのでしょう。

無名ハッシュ生成子に対応して無名配列生成子というものあります。

Perlプログラミングちゃんねるのご紹介

Perlの書籍
  • 業務に役立つPerl

    ログ解析など日本語を含むテキスト処理の実践!
    この私、Perlゼミの作者が執筆しています。
    ご購入、口コミ歓迎。
  • Perlの書籍 »
自己紹介
木本裕紀

「今日も元気だ! Perlで元気!」

Perlプログラミングちゃんねる

Youtubeチャンネル登録、いいね、コメント歓迎

Twitter
フォロー、いいね、リツート、コメント歓迎

kimoto.yuki@gmail.com
応援メッセージ、質問、間違い報告歓迎

Perl総合研究所