wantarray
wantarray
実行中のサブルーチンの戻り値として、リストが要求されている場合に真を返し、スカラーが要求されている場合には偽を返します。
サンプルプログラム
my ($h, $m, $s) = h_m_s(); # リストを要求
print "$h時 $m分 $s秒\n";
my $now = h_m_s(); # スカラーを要求
print "現在時刻は $now です。\n";
sub h_m_s {
my ($sec, $min, $hour) = (localtime)[0..2];
if (wantarray) {
return ($hour, $min, $sec);
} else {
return sprintf "%02d:%02d:%02d", $hour, $min, $sec;
}
}
関連項目
・return関数・scalar関数
