16.16 シグナルハンドラを一時的に上書きする
- localを使用して、シグナルの動作を一時的にオーバーライドする
# シグナルハンドラ sub ding { $SIG{INT} = \&ding; warn "\aEnter your name!\n"; } # 名前の要求をするために、SIGINTをオーバーライドする。 sub get_name { local $SIG{INT} = \&ding; my $name; print "Kindly Stranger, please enter your name: "; chomp( $name = <> ); return $name; }