プログラムを実行すると、異常な条件と「例外」と呼ばれるエラー数が発生します。これらのファイルを見つけるに失敗、リソース割り当てエラー、メモリの不足があります。
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 つの例外クラス、 CDBExceptionとCDaoException、グローバル関数、例外の種類をサポートするために提供します。:
DAO 例外関数
| AfxThrowDAOException | 独自のコードから、 CDaoExceptionをスローします。 |
| AfxThrowDBException | 独自のコードから、 CDBExceptionをスローします。 |
終了関数を次に示します MFC を提供します。:
| ユーザーが AfxAbort | 呼ばれるが発生したときに致命的なエラー、アプリケーションを終了するには。 |
参照特価;CException(&N)