広告スペース(バナー)
レッスン 14 / 20

無名サブルーチン

このレッスンでは、名前を付けずにその場で定義できる無名サブルーチン(クロージャ)を学びます。「Perl 無名サブルーチン 使い方」で調べている方向けです。

my $変数 = sub { ... };という形で、サブルーチンを変数に代入できます。$変数->(引数)という書き方で呼び出します。

サンプルコードでは、my $add_tax = sub { my $price = shift; return $price + int($price / 10); };という無名サブルーチンを作り、複数の商品価格に消費税を加算する処理に使っています。

初心者がよくつまずくのが、呼び出し方の記法です。通常のサブルーチンとは違い、変数に入った無名サブルーチンを呼び出すときは$変数->(引数)のように矢印->を使う必要があります。

実際の開発現場では、配列の各要素に処理を適用するmapgrepのような関数と組み合わせて、無名サブルーチンが頻繁に使われます。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではPerlを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
消費税を加算するような、その場で使える処理が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)