Ausnahmeverarbeitung
Wenn ein Programm ausgeführt wird, können einige der Regel abweichende Anforderungen und Fehler, die "Ausnahmen" bezeichnet werden, auftreten. Diese enthalten möglicherweise ausgeführt, Ressourcenzuordnungsfehler genügend Arbeitsspeicher und Fehler ein, Dateien zu finden.
Die Microsoft Foundation Class-Bibliothek verwendet ein Ausnahmebehandlungsschema, das eng nach dem modelliert wird, das vom ANSI-Normungsausschuss für C++ enthält. Ein Ausnahmehandler muss installiert werden, bevor eine Funktion aufruft, die möglicherweise eine Regel abweichende Situation entdeckt. Wenn die Funktion eine Regel abweichende Zustand auftritt, löst sie eine Ausnahme aus und Steuerelement wird z Ausnahmehandler übergeben.
Einige Makros, die mit der Microsoft Foundation Class-Bibliothek enthalten sind, installieren Ausnahmehandler. Einige andere globale Funktionen erleichtern, spezielle Ausnahmen auszulösen und Programme zu beenden, falls erforderlich. Diese Makros und globalen Funktionen werden in die folgenden Kategorien:
Ausnahmemakros, die den Ausnahmehandler strukturieren.
Ausnahme-Auslösen von Funktionen, die Ausnahmen bestimmter Typen generieren.
Beendigungsfunktionen, die dass verursachen.
Beispiele und weitere Details finden Sie im Artikel Ausnahmen.
Ausnahme-Makros
Legt einen Codeblock für die Ausnahmeverarbeitung fest. |
|
Legt einen Codeblock für das Abfangen einer Ausnahme vom vorherigen TRY-Block fest. |
|
Legt einen Codeblock für das Abfangen aller Ausnahmen vom vorherigen TRY-Block fest. |
|
Legt einen Codeblock für ansprechende zusätzliche Ausnahmetypen vom vorherigen TRY-Block fest. |
|
Legt einen Codeblock für das Abfangen aller anderen zusätzliche Ausnahmetypen fest, die in einem vorherigen TRY-Block ausgelöst werden. |
|
Beendet letzten CATCH oder den Codeblock AND_CATCH. |
|
Beendet den letzten CATCH_ALL Codeblock. |
|
Löst eine bestimmte Ausnahme aus. |
|
Löst die gerade behandelte Ausnahme dem folgenden äußeren Handler aus. |
Ausnahme-Auslösen von Funktionen
Löst eine Archivausnahme aus. |
|
Löst eine Dateiausnahme aus. |
|
Löst eine Arbeitsspeicherausnahme aus. |
|
Löst eine nicht unterstützte Ausnahme aus. |
|
Löst eine Windows Ressource-NOT-gesuchte Ausnahme aus. |
|
Löst eine Ausnahme in eine benutzerinitiierte Programmaktion aus. |
MFC stellt zwei Ausnahme-auslösende Funktionen speziell für OLE-Ausnahmen bereit:
OLE-Ausnahme-Funktionen
Löst eine Ausnahme in einer OLE-Automatisierungs-Funktion aus. |
|
Löst eine OLE-Ausnahme aus. |
Um Datenbankausnahmen zu unterstützen, stellen die Datenbankklassen zwei Ausnahmeklassen, CDBException und CDaoException sowie globale Funktionen um die Ausnahmetypen zu unterstützen:
DAO-Ausnahme-Funktionen
Löst einen CDaoException aus dem eigenen Code aus. |
|
Löst einen CDBException aus dem eigenen Code aus. |
MFC stellt die folgenden Beendigungsfunktion:
Beendigungs-Funktionen
Wird aufgerufen, um eine Anwendung beendet, wenn ein schwer wiegender Fehler auftritt. |