このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 Robert Schmidt 1999 年 6 月 3 日 このコラムでは、Robert Schmidt は標準の例外処理に対する Microsoft の拡張である Structured Exception Handling(SEH)と Microsoft Foundation Class(MFC)の例外処理について説明します。 はじめに 筆者の前回のコラムでは、例外の分類とそれらを管理するための標準 C ライブラリのサポートについて検討しました。今回は、こうした標準のメカニズムに対する Microsoft の拡張である構造化例外処理(SEH)と Microsoft Foundation Class(MFC)
これらはマクロなので、実際は整数が割り当てられている。 しかし__except()は正か0か負かという判断しかしてないらしいので、実はどんな値でもよい…? とは言え、上記のようなマクロが定義されているんだから、それを指定するべきだろう。 という訳で、__exceptの括弧内に式(MSDNではフィルタ式と称している)を書いて最終的に整数を返すことにより、条件に応じて処理を変更することが出来る。 例えばカンマ演算子を使ったり、独自の別関数(MSDNではフィルタ関数と称している)を呼び出したりすればよい。 _EXCEPTION_POINTERS* info; __try { 処理; } __except (info = GetExceptionInformation(), EXCEPTION_EXECUTE_HANDLER) { //構造化例外の情報をinfoに入れている。 //カンマ演算子では
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く