無名サブルーチンを作って実行する
◎お題
無名サブルーチンを、引数のいらないものといるものの2パターン作り、それぞれを実行して実行結果を出力する。
#! /usr/bin/perl use strict; use warnings; my $studyB=sub{ my ($katei, $takasa, $jyoutei) = @_; my $menseki = ( $katei + $jyoutei ) * $takasa / 2; return $menseki; }; my $studyA=sub{ print "I go to bed at 22 o'clock.\n"; print "so, see you tomorrow.\n" }; print $studyB->(5, 2, 5),"\n"; $studyA->();
◎ポイント
無名サブルーチンを作るときは、「$スカラー変数名=sub{};」で作る。特に最後の「;」を付け忘れると痛いことになる。
無名サブルーチンを使うと、いちいちサブルーチンのリファレンスをスカラー変数に代入せずに実行することができます。便利だ。