Lorsqu'un programme s'exécute, un certain nombre de conditions anormales et appelés « exceptions » des erreurs peut se produire. Il peut s'agir de la mémoire, erreurs d'allocation de ressources et l'incapacité de trouver les fichiers en cours d'exécution.
La bibliothèque Microsoft Foundation Class utilise un régime de gestion des exceptions est étroitement modelé après celle proposée par le Comité des normes ANSI C++. Un gestionnaire d'exceptions doit être créé avant d'appeler une fonction qui peut rencontrer une situation anormale. Si la fonction rencontre un état anormal, elle lève une exception et le contrôle est passé au gestionnaire d'exception.
Plusieurs macros incluses avec la bibliothèque Microsoft Foundation Class mettra en place les gestionnaires d'exceptions. Un certain nombre d'autres fonctions globales aide à lever des exceptions spécialisées et mettre fin à des programmes, si nécessaire. Ces macros et fonctions globales entrent dans les catégories suivantes:
Pour des exemples et plus de détails, consultez l'article Exceptions dans le Guide du programmeur Visual C++.
| ESSAYEZ | Désigne un bloc de code pour le traitement des exceptions. |
| CAPTURES | Désigne un bloc de code pour attraper une exception dans le précédent bloc TRY. |
| CATCH_ALL | Désigne un bloc de code pour la capture de toutes les exceptions du précédent bloc TRY. |
| AND_CATCH | Désigne un bloc de code pour la capture de types d'exceptions supplémentaires depuis le précédent bloc TRY. |
| AND_CATCH_ALL | Désigne un bloc de code pour la capture de tous les autres types supplémentaires d'exception levées dans un bloc TRY -précédent. |
| END_CATCH | Se termine le dernier bloc de code CATCH ou AND_CATCH. |
| END_CATCH_ALL | Se termine le dernier bloc de code CATCH_ALL. |
| LANCER | Lève une exception spécifiée. |
| THROW_LAST | Lève l'exception actuellement gérée pour le prochain gestionnaire externe. |
Jetant à l'exception des fonctions
| AfxThrowArchiveException | Lève une exception d'archive. |
| AfxThrowFileException | Lève une exception de fichier. |
| AfxThrowMemoryException | Lève une exception de mémoire. |
| AfxThrowNotSupportedException | Lève une exception non-prise en charge. |
| AfxThrowResourceException | Lève une exception Windows de ressource non trouvée. |
| AfxThrowUserException | Lève une exception dans une action du programme initié par l'utilisateur. |
MFC fournit deux fonctions jets exception spécifiquement pour les exceptions OLE:
Fonctions OLE Exception
| AfxThrowOleDispatchException | Lève une exception au sein d'une fonction d'automation OLE. |
| AfxThrowOleException | Lève une exception OLE. |
Pour soutenir les exceptions de base de données, les classes de base de données fournissent deux classes d'exception, CDBException et CDaoExceptionet fonctions globales en charge les types d'exception:
Fonctions d'Exception DAO
| AfxThrowDAOException | Lève un CDaoException à partir de votre propre code. |
| AfxThrowDBException | Lève une exception CDBException depuis votre propre code. |
MFC fournit la fonction de terminaison suivantes:
| AfxAbort | Appelé à mettre fin à une application lorsqu'une erreur fatale se produit. |
Voir aussi  ;CException