MFCにおける例外処理

MFCを利用している場合の例外処理は2つ方法があります。
ひとつはC++のtry-catch機構の利用。もうひとつはMFCのTRY,CATCH,END_CATCHマクロを利用する方法です。
前者はMFCのCExceptionクラス(またはその派生クラス)をキャッチした場合は、開放関数を利用する必要があります。
後者は開放関数を呼び出す必要がありません。
CExceptionを利用する場合は、TRY,CATCHマクロを利用することが良いでしょう。

以下にtry-catch機構と、TRY,CATCHマクロの例をあげておきます。
C++のtry-catch機構の利用
try{
・・・ステートメント・・・
}catch(CException *e){
    //CExceptionクラスに宣言されているDelete()関数を利用して削除を行う。
    //deleteでの削除は行ってはいけない(詳細はMSDNのCExceptionクラスのDelete関数の解説を見てください
    e->Delete();
}

C++のTRYマクロの利用
TRY{
・・・ステートメント・・・
}CATCH(CException *e){
    //マクロが自動的にCExceptionクラスの解放を行うのでDelete関数の呼び出しは不要
}END_CATCH