Fangen ( Exception_class, Exception_object_pointer_name )
Parameter
exception_class
Gibt den Ausnahmetyp der zu testen. Eine Liste der standard Exception-Klassen finden Sie unter CException Klasse.
exception_object_pointer_name
Gibt einen Namen für ein Ausnahmeobjekt Zeiger, der durch das Makro erstellt werden. Sie können den Zeigernamen verwenden, Zugriff auf das Ausnahmeobjekt im CATCH -Block. Diese Variable ist für Sie erklärt.
Bemerkungen
Verwenden Sie dieses Makro einen Codeblock definiert werden, die den ersten Ausnahmetyp ausgelöst, in der vorhergehenden TRY -Block abgefangen. Der Ausnahmeverarbeitung Code kann das Exception-Objekt, gegebenenfalls weitere Informationen über die spezifische Ursache der Ausnahme zu verhören. Rufen Sie das Makro THROW_LAST , Verarbeitung auf den nächsten äußeren Ausnahme-Frame zu verlagern. Ende der TRY -Block mit einer END_CATCH -Makro.
Wenn Exception_class die Klasse CExceptionist, werden alle Ausnahmetypen abgefangen werden. Die CObject::IsKindOf -Memberfunktion können Sie bestimmen, welche spezifische Ausnahme ausgelöst wurde. Eine bessere Möglichkeit, mehrere Arten von Ausnahmen abzufangen ist die Verwendung von sequenzielle AND_CATCH Anweisungen, jeweils mit einen anderen Ausnahmetyp.
Der Ausnahme-Objektzeiger wird durch das Makro erstellt. Sie müssen nicht um sie selbst zu deklarieren.
Hinweis&Nbsp; Der CATCH -Block ist definiert als ein C++-Bereich (abgegrenzt durch geschweifte Klammern). Wenn Sie Variablen in diesem Bereich deklarieren, beachten Sie, dass sie nur innerhalb dieses Bereichs zugänglich sind. Dies gilt auch für exception_object_pointer_name.
Weitere Informationen über Ausnahmen und das CATCH -Makro finden Sie im Artikel Ausnahmen im Visual C++ Programmer's Guide.
Siehe auch&Nbsp;Versuchen Sie, AND_CATCH, END_CATCH, werfen, THROW_LAST, CATCH_ALL, CException