[解決済み] Rubyで例外を発生させるのと例外を投げるのはどう違うのですか?
2022-04-16 06:52:58
質問
Rubyには2種類の例外メカニズムがあります。Throw/CatchとRaise/Rescueです。
なぜ2つあるのでしょうか?
どのような場合に片方を使い、もう片方を使わない方がよいのでしょうか?
どのように解決するのですか?
私が思うに http://hasno.info/ruby-gotchas-and-caveats は、その違いについてきちんと説明しています。
catch/throwはraise/rescueと同じではありません。catch/throwは特定のシンボルに対してcatchが定義されている地点までブロックを素早く戻すことができ、raise rescueはExceptionオブジェクトを含む本当の例外処理です。
関連
-
[解決済み] RubyのNameError
-
[解決済み] 投げる」と「投げる元」は違うのですか?
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み] 複数の例外を一度にキャッチする?
-
[解決済み] 最近のPythonでカスタム例外を宣言する適切な方法?
-
[解決済み] Rubyのattr_accessorとは何ですか?
-
[解決済み] Rubyで「例外 => e」を救済するのはなぜ悪いスタイルなのですか?
-
[解決済み] Javaにおける例外処理によるパフォーマンスへの影響とは?
-
[解決済み] クラスとモジュールの違い
-
[解決済み】プログラムを停止/終了させることなく、完全な例外トレースバックをキャッチして表示する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] RVM は関数ではないので、'rvm use ...' でルビーを選択してもうまくいきません。
-
[解決済み] ルビーオールウェイズ ラウンドアップ
-
[解決済み] Rubyの除算はなぜ10進数ではなく整数を返すのですか?
-
[解決済み] ルビー階乗関数
-
[解決済み] Rubyでnil値をマッピングして削除する方法
-
[解決済み] 配列をアルファベット順に並べるには?
-
[解決済み] Rubyで日付文字列をパースする
-
[解決済み] Ruby で Fixnum から String への暗黙の変換ができない (TypeError)
-
[解決済み] Rubyにバイナリ検索は組み込まれていますか?
-
ERRORの問題を解決します。rails のインストール時に gem ネイティブ拡張のビルドに失敗しました。