Partager via


CException, classe

La classe de base pour toutes les exceptions dans la bibliothèque MFC.

class AFX_NOVTABLE CException : public CObject

Membres

Constructeurs publics

Nom

Description

CException::CException

Construit un objet CException.

Méthodes publiques

Nom

Description

CException::Delete

Supprime un objet d' CException .

CException::ReportError

Stocke un message d'erreur dans un message à l'utilisateur.

Notes

Étant donné qu' CException est une classe de base abstraite vous ne pouvez pas créer d'objets d' CException directement ; vous devez créer des objets de classes dérivées. Si vous devez créer votre propre classe de style d' CException, utilisez l'une des classes dérivées répertoriées ci-dessus en tant que modèle. Assurez-vous que votre classe dérivée utilise également IMPLEMENT_DYNAMIC.

Les classes dérivées et leurs descriptions sont répertoriées ci-dessous :

CSimpleException

Une classe de base des exceptions critiques ressource MFC

CInvalidArgException

Spécification d'exception d'argument non valide

CMemoryException

Exception de mémoire insuffisante

CNotSupportedException

Demande d'une opération non prise en charge

CArchiveException

Exception d'Archive- spécifique

CFileException

Exception de fichier spécifique

CResourceException

Ressource est introuvable ou non être créés

COleException

Exception OLE

CDBException

Exception de base de données (autrement dit, conditions d'exception surgissant pour les classes de base de données MFC basée sur Open Database Connectivity)

COleDispatchException

Exception OLE de dispatch (automation)

CUserException

Exception qui indique que ressource est introuvable

CDaoException

Exception d'objets d'accès aux données (autrement dit, conditions d'exception surgissant pour les classes DAO)

CInternetException

Exception Internet (autrement dit, conditions d'exception surgissant pour les classes Internet).

Ces exceptions sont conçues pour être utilisées avec les macros de JET, de THROW_LAST, d' ESSAI, de CATCH, d' AND_CATCH, et d' END_CATCH . Pour plus d'informations sur les exceptions, consultez Traitement des exceptionsou, consultez l'article gestion des exceptions (MFC).

Pour intercepter une exception spécifique, utilisez la classe dérivée appropriée. Pour intercepter tous les types d'exceptions, utilisez CException, puis utiliser CObject::IsKindOf pour distinguer entre CException- classes dérivées. Notez que les travaux de CObject::IsKindOf uniquement pour les classes ont été déclaré avec la macro d' IMPLEMENT_DYNAMIC , afin de tirer parti de la vérification de type dynamique. Tout CException- la classe dérivée que vous créez doit utiliser la macro d' IMPLEMENT_DYNAMIC , et.

Vous pouvez enregistrer des informations détaillées sur les exceptions à l'utilisateur en appelant GetErrorMessage ou ReportError, deux fonctions membres qui utilisent chacune des classes dérivées d'CException.

Si une exception est interceptée par l'une des macros, l'objet d' CException est supprimé automatiquement ; ne le supprimez pas vous-même. Si une exception est interceptée à l'aide d'un mot clé de collecteur , il n'est pas automatiquement désactivée. Consultez l'article gestion des exceptions (MFC) pour plus d'informations sur le moment où supprimer un objet d'exeption.

Hiérarchie d'héritage

CObject

CException

Configuration requise

Header: afx.h

Voir aussi

Référence

CObject, classe

Graphique de la hiérarchie

Autres ressources

Le traitement des exceptions

Comment faire : Créez mes propres Classes exceptions personnalisées ?