Compartilhar via


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

yx1b5f5w.collapse_all(pt-br,VS.110).gifConstrutores public

Nome

Descrição

CException::CException

Constrói um objeto de CException .

yx1b5f5w.collapse_all(pt-br,VS.110).gifMétodos públicos

Nome

Descrição

CException::Delete

Exclui um objeto de CException .

CException::ReportError

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:

CSimpleException

Uma classe base para exceções recurso críticos MFC

CInvalidArgException

Condição de exceção inválido de argumento

CMemoryException

Exceção de Para fora de memória

CNotSupportedException

Solicitação para uma operação sem suporte

CArchiveException

Arquivo morto- exceção específica

CFileException

Com exceção específica

CResourceException

Recurso do windows não foi encontrado ou não creatable

COleException

Exceção OLE

CDBException

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)

COleDispatchException

Exceção OLE de distribuição (automação)

CUserException

Exceção que indica que um recurso não pôde ser encontrado

CDaoException

Exceção do objeto de acesso a dados (isto é, condições de exceções que ocorrem para classes de DAO)

CInternetException

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

CObject

CException

Requisitos

Cabeçalho: afx.h

Consulte também

Referência

Classe de CObject

Gráfico de hierarquia

Outros recursos

Processamento de exceção

Como: eu faço Crie minhas próprias classes de exceção personalizada?