Processamento de exceção
Quando um programa é executado, pode ocorrer um número de condições anormais e erros chamados "exceções".Esses podem incluir falta de memória, erros de alocação de recursos e falha para localizar arquivos.
A biblioteca Microsoft Foundation Class usa um esquema de manipulação de exceção é modelado perto um proposto pelo Comitê de padrões ANSI para C++.Um manipulador de exceção deve ser configurado antes de chamar uma função que pode encontrar uma situação anormal.Se a função encontra uma situação anormal, lança uma exceção e o controle é passado para o manipulador de exceção.
Várias macros incluídas com a biblioteca Microsoft Foundation Class irá configurar manipuladores de exceção.Um número de outras funções globais ajuda a lançar exceções especializadas e encerrar programas, se necessário.Essas macros e funções globais se encaixam nas seguintes categorias:
Macros de exceção, qual estrutura seu manipulador de exceção.
Funções de lançar a exceção, que geram exceções de tipos específicos.
Funções de terminação, que causa o encerramento do programa.
Para obter mais detalhes e exemplos, consulte o artigo exceções.
Macros de exceção
Designa um bloco de código para o processamento de exceção. |
|
Designa um bloco de código para capturar uma exceção do precedente tente bloco. |
|
Designa um bloco de código para capturar todas as exceções do precedente tente bloco. |
|
Designa um bloco de código para capturar tipos adicionais de exceção do precedente tente bloco. |
|
Designa um bloco de código para capturar todos os outros tipos adicionais de exceção lançados em uma anterior tente bloco. |
|
Termina a última CATCH ou AND_CATCH bloco de código. |
|
Termina a última CATCH_ALL bloco de código. |
|
Lança uma exceção especificada. |
|
Lança a exceção manipulada atualmente para o próximo manipulador externo. |
Funções lançam exceções
Lança uma exceção de arquivamento. |
|
Lança uma exceção de arquivo. |
|
Lança uma exceção de memória. |
|
Lança uma exceção não-suportado. |
|
Lança uma exceção de recurso não encontrado do Windows. |
|
Lança uma exceção em uma ação iniciada pelo usuário programa. |
MFC fornece duas funções lançam exceções especificamente para exceções de OLE:
OLE exceção funções
Lança uma exceção dentro de uma função de automação OLE. |
|
Lança uma exceção de OLE. |
Para suportar exceções de banco de dados, as classes de banco de dados fornecem duas classes de exceção, CDBException e CDaoExceptione funções globais para oferecer suporte os tipos de exceção:
Funções de exceção do DAO
Lança um CDaoException de seu próprio código. |
|
Lança um CDBException de seu próprio código. |
MFC fornece a seguinte função de encerramento:
Funções de terminação
Chamado encerrar um aplicativo quando um erro fatal de ocorre. |