Есть два механизма исключений.
Для обработки исключений MFC используется класс CException или классы поражденные от него. Для обработки исключительных ситуаций в MFC есть свои классы
CMemoryException недостаточно памяти CFileException ошибка работы с файлами CArhiveException ошибка записи или востановления обьекта CNotSupportedException ошибка неизвестного устройства CResourceException ошибка работы с ресурсами CDaoException ошибка работы с базами данных CDBException ошибка рабюоты с базами данных COleException ошибка работы с обьектами OLE COleDispatchException ошибка работы с серверами автоматизации CUserException исключение с окном сообщенияК сожалению во всем этом есть неприятность. Механизмы работы исключений MFC не работают со структурированными обработчиками исключений SEH для NT. Следует отметить, что объекты MFC порождают исключения только производные от класса CException. Вот пример отлавливания исключения по нехватке памяти.
try { // здесь мы эту память...... // короче на лево и направо раздаем } catch(CMemoryException) { // а вот здесь мы напишем // что будет делать потом // когда она закончится }