Quando um programa é executado, uma série de condições anormais e erros chamados "exceções" pode ocorrer. Estes podem incluir executando de memória, erros de alocação de recursos e falha para localizar arquivos.
O Microsoft Foundation Biblioteca de Classees usa um esquema de manipulação de exceção que é modelado pròxima após aquele proposto pelo Comitê de padrões ANSI para C++. Um manipulador de exceção deve ser definido antes de chamar uma função que pode encontrar uma situação anormal. Se a função encontrar uma condição anormal, ele lança uma exceção e Controlarar é passado para o manipulador de exceção.
Várias macros incluídas com o Microsoft Foundation Biblioteca de Classees irão configurar manipuladores de exceção. Um número de outras funções global ajuda a lançar exceções especializadas e encerrar programas, se necessário. Essas macros e funções global se enquadram as seguintes categorias:
Para obter exemplos e obter mais detalhes, consulte o artigo exceções no Guia do programador do Visual C++.
| TENTE | Designa um Bloquear de código para o processamento de exceção. |
| PEGAR | Designa um Bloquear de código para capturar uma exceção do Bloquear de TRY anterior. |
| CATCH_ALL | Designa um Bloquear de código para capturar Tudo as exceções do Bloquear de TRY anterior. |
| AND_CATCH | Designa um Bloquear de código para capturar tipos adicionais de exceção do Bloquear de TRY anterior. |
| AND_CATCH_ALL | Designa um Bloquear de código para capturar Tudo outros tipos adicionais de exceção lançados em um Bloquear de TRY anterior. |
| END_CATCH | Ends the last CATCH ou AND_CATCH Bloquear de código. |
| END_CATCH_ALL | Termina o último bloco de código CATCH_ALL. |
| JOGAR | Lança uma exceção especificada. |
| THROW_LAST | Lança a exceção atualmente manipulada para o Avançar manipulador outer. |
| AfxThrowArchiveException | Lança uma exceção de arquivamento. |
| AfxThrowFileException | Lança uma exceção de arquivo. |
| AfxThrowMemoryException | Lança uma exceção de memória. |
| AfxThrowNotSupportedException | Lança uma exceção não-suportado. |
| AfxThrowResourceException | Lança uma exceção de recurso não encontrado do Windows. |
| AfxThrowUserException | Lança uma exceção em uma ação programa iniciado pelo usuário. |
MFC fornece duas funções exceção-lançar especificamente para exceções OLE:
OLE exceção funções
| AfxThrowOleDispatchException | Lança uma exceção dentro de uma função de automação OLE. |
| AfxThrowOleException | Lança uma exceção de OLE. |
Para oferecer suporte a exceções de banco de dados, as classes de banco de dados fornecem duas classes de exceção, CDBException e CDaoExceptione funções global para oferecer suporte os tipos de exceção:
Funções de exceção do DAO
| AfxThrowDAOException | Lança um CDaoException de seu próprio código. |
| AfxThrowDBException | Lança um CDBException de seu próprio código. |
MFC fornece a seguinte função de encerramento:
| AfxAbort | Chamado encerrar um aplicativo quando um erro fatal ocorre. |
Co&nsulte tambémnbsp;CException