例外処理
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/08/17 05:32 UTC 版)
例外処理(れいがいしょり、英語: exception handling)とは、IT業界で用いられる専門用語で、ある抽象レベルにおけるシステムの設計で想定されておらず、ユーザー操作によって解決できない問題に対処するための処理である。例外処理の結果として問題が解決されないとシステム障害になる。システム停止やデータ破損の原因になり、ユーザーに損害を与える可能性があるため、システム開発で例外処理は重要視されている[1][2][3]。
- ^ a b “第 5 章 例外処理 (C++ プログラミングガイド)”. docs.oracle.com. 2019年10月26日閲覧。
- ^ a b “IPA ISEC セキュア・プログラミング講座:C/C++言語編 第6章 フェイルセーフ:体系だてたエラーハンドリング”. www.ipa.go.jp. 2019年10月26日閲覧。
- ^ a b “エラー処理をパターンにはめよう”. Codezine. 2019年10月26日閲覧。
- ^ Bjarne Stroustrup. “Appendix E: Standard-Library Exception Safety in "The C++ Programming Language" (3rd Edition).Addison-Wesley, ISBN 0-201-88954-4”. 2013年5月1日閲覧。
- ^ “Exception-Safety in Generic Components”. 2013年5月1日閲覧。
- ^ http://www.open-std.org/jtc1/sc22/wg21/docs/papers/1997/N1077.asc
- ^ /EH (例外処理モデル)
- ^ ただし、例外処理中にもう一度別のデストラクタから例外が発生してしまうと復帰できなくなるため、デストラクタから例外を発生させるべきではないとされる。
- ^ 例外指定は、 C++関数によって伝達される例外の種類についてプログラマが意図したものを示す言語機能です。 Microsoft Docs Visual C++
- ^ C++17ではこの動的例外仕様が削除される。C++日本語リファレンス
- ^ class StopIteration Ruby 1.9.3 リファレンスマニュアル(2013年10月7日閲覧)。
- ^ 組み込み例外 Python 2.7ドキュメンテーション(2013年10月7日閲覧)。
- ^ module function Kernel.#throw Ruby 1.9.2 リファレンスマニュアル(2013年10月7日閲覧)。
- ^ たとえばCOMではメソッドの戻り値として、MAKE_HRESULT()マクロを用いてHRESULTコードを定義するが、異常系は負数となる。
- ^ CUDAのように列挙型で定義した正の数をエラーコードとして使用するライブラリもある。CUDA Runtime API :: CUDA Toolkit Documentation
- ^ GetFileSize 関数
- ^ GetFileSize function (Windows)
- ^ “C言語規格のドラフト”. 2018年11月21日閲覧。
- 例外処理のページへのリンク