CExceptions-Klasse
Die Basisklasse für alle Ausnahmen in Microsoft Foundation Class-Bibliothek.
class AFX_NOVTABLE CException : public CObject
Mitglieder
Öffentliche Konstruktoren
Name |
Description |
---|---|
Erstellt ein CException-Objekt. |
Öffentliche Methoden
Name |
Description |
---|---|
Löscht ein Objekt CException. |
|
Gibt eine Fehlermeldung in einem Meldungsfeld den Benutzer. |
Hinweise
Da CException eine abstrakte Basisklasse ist, können Sie CException-Objekte nicht direkt erstellen; Sie müssen Objekte aus abgeleiteten Klassen erstellen.Wenn Sie eine eigene Klasse im CException erstellen müssen, verwenden Sie eine der abgeleiteten Klassen, die oben als Modell aufgeführt sind.Überprüfen Sie, ob die abgeleitete Klasse auch IMPLEMENT_DYNAMIC verwendet.
Die abgeleiteten Klassen und ihre Beschreibungen sind nachfolgend aufgeführt:
Eine Basisklasse für Ressource-wichtige MFC-Ausnahmen |
|
Ungültige ArgumentAusnahmebedingung |
|
Ausnahme aufgrund ungenügenden Arbeitsspeichers |
|
Anforderung für einen nicht unterstützten Vorgang |
|
Archiv-Besondere Ausnahme |
|
Datei-Besondere Ausnahme |
|
Windows-Ressource nicht gefunden oder nicht erstellbar |
|
OLE-Ausnahme |
|
Datenbankausnahme (das heißt, Ausnahmebedingungen, die für MFC-Datenbankklassen auf Grundlage Open Database Connectivity) auftreten |
|
Ausnahme OLE-Dispatchs (Automatisierung) |
|
Ausnahme, die angibt, dass eine Ressource nicht gefunden werden kann |
|
Datenzugriffsobjektausnahme (das heißt, Ausnahmebedingungen, die für DAO-Klassen auftreten) |
|
Internet-Ausnahme (das heißt, Ausnahmebedingungen, die für Internetklassen) auftreten. |
Diese Ausnahmen werden vorgesehen, mit den THROW, THROW_LAST, TRY, ERFASSUNG, AND_CATCH und END_CATCH-Makros verwendet werden.Weitere Informationen zu Ausnahmen, finden Sie unter Ausnahme-Verarbeiten oder finden Sie im Artikel Ausnahmebehandlung (MFC).
Um eine bestimmte Ausnahme abzufangen, verwenden Sie die entsprechende abgeleitete Klasse.Um alle Typen Ausnahmen abzufangen, verwenden Sie CException und verwenden Sie dann CObject::IsKindOf mit CException zu unterscheiden von abgeleitete Klassen.Beachten Sie, dass CObject::IsKindOf funktioniert nur für die Klassen, die mit dem IMPLEMENT_DYNAMIC-Makro deklariert werden, um dynamische Typüberprüfung zu nutzen.Alle CException von abgeleitete Klasse, die Sie erstellen, sollte auch das IMPLEMENT_DYNAMIC-Makro verwenden.
Sie können Details zu Ausnahmen den Benutzer melden, indem Sie GetErrorMessage oder ReportError, zwei Memberfunktionen bereit aufrufen, die mit allen abgeleiteten Klassen von CException funktionieren.
Wenn eine Ausnahme durch eines der Makros abgefangen wird, wird das Objekt CException automatisch gelöscht; löschen Sie es sich nicht.Wenn eine Ausnahme abgefangen wird, indem ein catch-Schlüsselwort verwendet, wird sie nicht automatisch gelöscht.Weitere Informationen finden Sie im Artikel Ausnahmebehandlung (MFC) weitere Informationen dazu, wann ein exeption Objekt gelöscht werden.
Vererbungshierarchie
CException
Anforderungen
Header: afx.h
Siehe auch
Referenz
Weitere Ressourcen
Wie behebe ich: Erstellen Sie die eigenen benutzerdefinierten Ausnahme-Klassen?