第42回 warn
die を書けば、プログラムはそこで終了してしまうわけですが、
warn にすると、プログラムは終了しません。
これをつかって、
ファイルが open できなくても、警告メッセージを出すだけにとどめ、処理を続けることができます。
まず、dieを使った例を見てみてから、dieをwarnに書き換えて、その実行結果を比べてみましょう。
dieを使った例
open my $f, '<', 'hoge.txt' or die $!; print 'ここまでこれるかな', "\n";
結果
No such file or directory at bingo.pl line 1.
warnを使った例
open my $f, '<', 'hoge.txt' or warn $!; print 'ここまでこれるかな', "\n";
結果
No such file or directory at bingo.pl line 1. ここまでこれるかな
まとめ
dieを使った場合では、
ここまでこれるかな
は、表示されていません。 つまり、dieを実行した行で、プログラムが終了しています。
それに対し、warnを使った例では、
ここまでこれるかな
が表示されています。よって、warnを実行した行で、プログラムが終了せず、次の行以降も処理されているのです。
このように、プログラムが終了するか、しないか これが die と warn の違いです。
それでは また〜