例外処理

プログラムを実行すると、異常な条件と「例外」と呼ばれるエラー数が発生します。これらのファイルを見つけるに失敗、リソース割り当てエラー、メモリの不足があります。

Microsoft Foundation クラス ライブラリは、密接には、ANSI 標準委員会によって C++ の提案モデルは、例外処理方式を使用します。関数を呼び出すと、異常な状況が発生する可能性が前に、例外ハンドラーを設定する必要があります。関数に異常が発生した場合は、例外をスローし、例外ハンドラーに制御が渡されます。

Microsoft Foundation クラス ライブラリに含まれるいくつかのマクロは、例外ハンドラーを設定します。その他グローバル関数の数特殊な例外をスローし、プログラムを終了するには、必要に応じてヘルプします。これらのマクロおよびグローバル関数に次の分類します。:

例や詳細については、記事を参照してください Visual の C++ プログラマのガイド例外

例外処理マクロ

してください。 例外処理のコードのブロックを指定します。
キャッチ その前にしようとブロックから例外をキャッチするためのコードのブロックを指定します。
CATCH_ALL その前にしようとブロックからのすべての例外をキャッチするためのコードのブロックを指定します。
AND_CATCH 上記を試みるブロックから追加の例外をキャッチするためのコードのブロックを指定します。
AND_CATCH_ALL 上記してくださいブロックでスロー他のすべての追加の例外タイプをキャッチするためのコードのブロックを指定します。
END_CATCH 最後のキャッチまたはAND_CATCHコード ブロックを終了します。
END_CATCH_ALL 最後のCATCH_ALLコード ブロックを終了します。
スロー 指定した例外をスローします。
THROW_LAST 次の外側のハンドラーに現在の例外をスローします。

例外スロー関数

AfxThrowArchiveException アーカイブの例外をスローします。
AfxThrowFileException ファイル例外をスローします。
AfxThrowMemoryException メモリの例外をスローします。
AfxThrowNotSupportedException サポートされていない例外がスローされます。
AfxThrowResourceException Windows リソース-ない - 例外をスローします。
AfxThrowUserException プログラムのユーザーが開始したアクションでは例外をスローします。

MFC は、OLE 例外専用の 2 つの例外スロー関数を提供します。:

OLE 例外関数します。

AfxThrowOleDispatchException OLE オートメーション関数内で例外をスローします。
AfxThrowOleException OLE の例外をスローします。

データベース例外をサポートするには、データベース クラス 2 つの例外クラス、 CDBExceptionCDaoException、グローバル関数、例外の種類をサポートするために提供します。:

DAO 例外関数

AfxThrowDAOException 独自のコードから、 CDaoExceptionをスローします。
AfxThrowDBException 独自のコードから、 CDBExceptionをスローします。

終了関数を次に示します MFC を提供します。:

終了関数

ユーザーが AfxAbort 呼ばれるが発生したときに致命的なエラー、アプリケーションを終了するには。

参照特価;CException(&N)

Index