Perlの[email protected]
と$!
の違いは何ですか? eval
に関連付けられたエラーは、[email protected]
を使用して出力されます。 $!
は、エラーのキャプチャにも使用されます。次に両者の違いは何ですか? perldoc perlvarから
6
A
答えて
14
:
変数
[email protected]
、$!
、$^E
、および$?
はPerlプログラムの実行中に表示されるエラー条件のさまざまな種類の情報が含まれています。変数は、エラーを報告したサブシステムとPerlプロセスとの間の「距離」によって順序付けられて示されています。 Perlインタプリタ、Cライブラリ、オペレーティングシステム、または外部プログラムによって検出されたエラーにそれぞれ対応します。
3
$!
は、システムコールが失敗したときに設定されます。
open my $fh, '<', '/foobarbaz' or die $!
「このようなファイルまたはディレクトリはありません」と出力されません。
[email protected]
には、die
に渡された引数が含まれています。したがって:
eval {
open my $fh, '<', '/foobarbaz' or die $!
};
if ([email protected]) {
warn "Caught exception: [email protected]";
}
それはeval
のいくつかのフォームを使用せずに[email protected]
をチェックするために意味をなさない、あなたがエラーの場合には、それを設定することができます関数を呼び出していないとき、それは$!
をチェックするために感知しないことができます。
関連する問題
- 1. 違い= Perlの
- 2. PerlとvSphere Perl SDK用のvSphere Automation SDKの違い
- 3. perlダンサーフレームワークとapache2の違いhttpサーバー
- 4. "perl -n"と "perl -p"の違いは何ですか?
- 5. Strawberry Perlでは、perl \ libとperl \ site \ libの違いは何ですか?
- 6. PerlのSDBM_Fileハッシュと通常のハッシュの違いは?
- 7. PerlとPythonの正規表現の違いは?
- 8. perlのファーストクラスエンティティとセカンドクラスエンティティの違いは何ですか?
- 9. Perlでのハッシュとハッシュリファレンスの違いは何ですか?
- 10. perl -dのxとpの違いは何ですか?
- 11. Perl 5の親と基底の違いは何ですか?
- 12. perlのblessとtieの違いは何ですか?
- 13. perlでは、$ DB :: single = 1と2の違いは何ですか?
- 14. ($ test)=(@test)との違いは何ですか? $ test = @ test; Perlで?
- 15. Perlで `use base`と@ISAの違いは何ですか?
- 16. Perlで違いがあるのは&func;と&func;ですか?
- 17. スクリプトを書くとき、#!/ usr/bin/perlと#!/ usr/bin/env perlの違いは何ですか?
- 18. perlモジュールのインストールとフォルダ全体のコピーとの違いは何ですか?
- 19. Perl CGIとCatalystの違いとパフォーマンスの特徴は何ですか?
- 20. perlとrubyの間のブロッホ暗号の相違点
- 21. Perlの(、、)と(||、&&)の短絡演算子の違いは何ですか?
- 22. Perlの正規表現で\ 1と$ 1の違いは何ですか?
- 23. Perlでは、モジュールのロードにuseとrequireの違いは何ですか?
- 24. Perlでの語彙スコープと動的スコープの違いは何ですか?
- 25. Perlでのパラメータ入力メカニズムの違いは何ですか?
- 26. オブジェクト指向Perlのパッケージ、モジュール、クラスの違いは何ですか?
- 27. CGIからPerlへのsendmailの違いは何ですか?
- 28. perl 2つのスクリプトの違いは何ですか
- 29. Perlでは、ダイレクトグロブエイリアシングと隠蔽によるエイリアシングに違いはありますか? Perlで
- 30. "||"の違いは何ですか? Perlでは "or"?