Classe de CException
A classe base para todas as exceções na biblioteca de classes da Microsoft foundation.
class AFX_NOVTABLE CException : public CObject
Membros
Construtores public
Nome |
Descrição |
---|---|
Constrói um objeto de CException . |
Métodos públicos
Nome |
Descrição |
---|---|
Exclui um objeto de CException . |
|
Reportar uma mensagem de erro em uma caixa de mensagem para o usuário. |
Comentários
Porque CException é uma classe base abstrata você não pode criar objetos de CException diretamente; você deve criar objetos de classes derivadas.Se você precisa criar seu próprio CException- estilize a classe, use uma das classes derivadas listadas acima como um modelo.Certifique-se de que sua classe derivada também usa IMPLEMENT_DYNAMIC.
Classes derivadas e suas descrições listadas abaixo:
Uma classe base para exceções recurso críticos MFC |
|
Condição de exceção inválido de argumento |
|
Exceção de Para fora de memória |
|
Solicitação para uma operação sem suporte |
|
Arquivo morto- exceção específica |
|
Com exceção específica |
|
Recurso do windows não foi encontrado ou não creatable |
|
Exceção OLE |
|
Exceção de banco de dados (isto é, condições de exceções que ocorrem para as classes de banco de dados MFC baseado em ODBC) |
|
Exceção OLE de distribuição (automação) |
|
Exceção que indica que um recurso não pôde ser encontrado |
|
Exceção do objeto de acesso a dados (isto é, condições de exceções que ocorrem para classes de DAO) |
|
Exceção da Internet (isto é, condições de exceções que ocorrem para classes da Internet). |
Essas exceções sejam usadas com macros de LANCE, de THROW_LAST, de TENTATIVA, de CAPTURA, de AND_CATCH, e de END_CATCH .Para obter mais informações sobre as exceções, consulte Processamento de exceção, ou consulte o artigo manipulação de exceção (MFC).
Para capturar uma exceção específica, use a classe derivada apropriada.Para capturar todos os tipos de exceções, use CExceptionem seguida, use CObject::IsKindOf para diferenciar entre CException- classes derivadas.Observe que o trabalho de CObject::IsKindOf somente para classes declarados com a macro de IMPLEMENT_DYNAMIC , para tirar proveito de verificação de tipo dinâmico.Qualquer CException- a classe derivada que você cria deve usar a macro de IMPLEMENT_DYNAMIC , também.
Você pode relatar detalhes sobre exceções para o usuário chamando GetErrorMessage ou ReportError, duas funções de membro que funcionam com quaisquer das classes derivadas de CException.
Se uma exceção é detectada por um de macros, o objeto de CException é excluído automaticamente; o não excluir você mesmo.Se uma exceção é detectada usando uma palavra-chave de catch , não será excluída automaticamente.Consulte o artigo manipulação de exceção (MFC) para obter mais informações sobre quando excluir um objeto de exeption.
Hierarquia de herança
CException
Requisitos
Cabeçalho: afx.h
Consulte também
Referência
Outros recursos
Como: eu faço Crie minhas próprias classes de exceção personalizada?