MW211 EXIT

devlog
VC++/疑似例外
2014年05月12日
疑似的例外を発生させるには「throw」してあげればよい。
┌──────────────────────────────────────┐
│try {                                                                       │
│    throw("例外だよ");  // 疑似例外                                         │
│} catch(const char* str) {                                                  │
│    // 例外処理                                                             │
│}                                                                           │
└──────────────────────────────────────┘
但し、これは文字型の場合。
「CException」型だとめんどくさい。

で、これを簡単にやってくれるのが「AfxThrowUserException()」。
┌──────────────────────────────────────┐
│try {                                                                       │
│    AfxThrowUserException();  // 疑似例外                                   │
│} catch(CException *e) {                                                    │
│    // 例外処理                                                             │
│}                                                                           │
└──────────────────────────────────────┘
「不明なエラーが発生しました。」っていうメッセージで例外を起こしてくれる。

但し、初期化処理「AfxWinInit()」実行後から使用可なので注意のこと。
分類:C/C++