Wie implementiere ich die Ausnahmebehandlung in C ++?



Dieser Artikel hilft Ihnen anhand einer praktischen Demonstration zu verstehen, was Ausnahmebehandlung ist und wie die Ausnahmebehandlung in C ++ implementiert wird.

Ausnahmen sind abnormale Bedingungen während der Laufzeit oder Kompilierungszeit. ist ein sehr wesentliches Konzept in c ++. Dieser Artikel führt Sie in die Ausnahmebehandlung in C ++ mit ihren verschiedenen Typen ein.

Die folgenden Hinweise werden in diesem Artikel behandelt:





Also fangen wir an,

Ausnahmebehandlung in C ++

Arten von Ausnahmen

Es gibt zwei Arten von Ausnahmen:



Laufzeitausnahme

Es ist eine Ausnahme, die zur Laufzeit abgefangen wird.

Ausnahme zur Kompilierungszeit



Es ist eine Ausnahme, die während der Kompilierungszeit abgefangen wird.

Fahren Sie mit diesem Artikel zur Ausnahmebehandlung in C ++ fort.

Was ist Ausnahmebehandlung?

Fehler stören die normale Ausführung eines Programms. Die Behandlung von Ausnahmen ist sehr wichtig und der Prozess der Behandlung von Fehlern oder Ausnahmen. Es stellt sicher, dass die Ausführung des Programms nicht von den Ausnahmen betroffen ist, und behandelt sie langsam, ohne dass Probleme bei der Programmausführung auftreten.

Wenn Sie die Ausnahmebehandlung in Betracht ziehen, sind drei Begriffe damit verbunden:

Versuchen

Der Code in diesem Block ähnelt einem Testcode, der möglicherweise eine Ausnahme auslöst. Diese Ausnahme wird im catch-Block abgefangen.

Fang

Der Code in diesem Block wird ausgeführt, wenn der Code in den try-Blöcken eine Ausnahme auslöst.

Programm für verknüpfte Listen in c

Werfen

Dieses Schlüsselwort wird verwendet, um eine Ausnahme auszulösen, wenn sie auftritt. Die Ausnahme wird an den Ausnahmebehandler gesendet.

Syntax:

Der Code im try-Block wird ausgeführt. Wenn ein Fehler generiert wird, löst das Schlüsselwort throw die Ausnahme an den Ausnahmebehandler aus, dh an den catch-Block. Der catch-Block führte dann den Code aus, der sich in seinem Block befindet, und behandelte so die Ausnahme.

Schauen wir uns den Beispielcode für die Ausnahmebehandlung in C ++ an

Beispielcode

#include using namespace std try {// Code für try throw & ldquoexception & rdquo} catch (Ausnahme) {// Code für catch} int main () {int x = 1 try {cout<< 'Try Block: '<

Ausgabe:

Ausgabe - Ausnahmebehandlung in C ++ - Edureka

Erläuterung

Dieses Programm demonstriert die Ausnahmebehandlung. Wir haben eine Variable x, der der Wert 1 zugewiesen wird. Dann haben wir den Anfang des try-Blocks. In diesem Block haben wir eine if-Anweisung mit der Bedingung x<10.

In unserem Fall ist die Bedingung wahr, da x eins ist. Das Programm löst dann eine Ausnahme aus und die Steuerung wechselt zum Fangblock. Wir führen die Bedingung im catch-Teil aus und verlassen den Block.

fangen (...) {Kosten<< 'Default Exceptionn'<

Zuletzt führen wir die restlichen Anweisungen nach dem catch-Block und dem Exit-Programm aus.

Es kann mehrere catch-Anweisungen geben. abhängig von der Anzahl der möglichen Ausnahmen.

Fahren Sie mit diesem Artikel zur Ausnahmebehandlung in C ++ fort.

Catch Block Failure

Betrachten Sie das vorherige Programm. Wenn anstelle von x das Schlüsselwort throw 'ABC' auslöst, kann die catch-Funktion dies nicht verarbeiten. Es wird ein Fehler angezeigt,

In diesem Fall kann unsere Won-Fehlermeldung angezeigt werden.

Um dies zu lösen, müssen wir dem Code eine Standard-Catch-Funktion hinzufügen, um solche Probleme zu lösen.

#include using namespace std int main () {int x = 1 try {cout<< 'Try Block: '<

Ausgabe:

Erläuterung:

Dieser Code ähnelt dem vorherigen. Die einzige Änderung besteht darin, dass die ausgelöste Ausnahme vom Typ char ist. Dies führt dazu, dass unsere Fangfunktion unbrauchbar wird. Deshalb haben wir eine Standard-Catch-Funktion hinzugefügt.

Wenn keine der catch-Anweisungen übereinstimmt, wird der Standard-catch ausgeführt.

Mehrere Fangblöcke

Es können mehrere Catch-Blöcke eines einzelnen Try-Blocks vorhanden sein.

Hier ist ein Beispiel,

#include using namespace std int test (int a) {try {if (a<0) throw a else throw 'a' }catch(int a){ cout<<'Caught an integer: ' << a<

Ausgabe:

Erläuterung:

Im obigen Code verwenden wir mehrere catch-Anweisungen. Wir haben einen Funktionstest, der eine Ausnahme generiert. Im ersten Testfall ist der Wert 10. Da 10 größer als Null ist, wird das Zeichen 'a' geworfen und von der zweiten Fangfunktion abgefangen.

Im zweiten Fall ist der Wert kleiner als 0, sodass der Wert -1 ausgelöst und von einer ganzzahligen Ausnahme abgefangen wird

Ausnahmebehandlung in der Basis- und abgeleiteten Klasse:

Was ist eine String-Methode in Java

Wenn die Basis- und abgeleiteten Klassenausnahmen abgefangen werden, muss der Fang der abgeleiteten Klasse vor der Basisklasse ausgeführt werden.

Hier sind einige Ausnahmen:

  • std :: Ausnahme

  • Logikfehler

  • Laufzeit Fehler

  • bad_alloc

  • bad_cast

  • bad_exception

Damit kommen wir zum Ende dieses Blogs über 'Ausnahmebehandlung in C ++'. Ich hoffe, Sie fanden dies informativ und hilfreich. Weitere Tutorials zu ähnlichen Themen finden Sie hier. Sie können sich auch unser Schulungsprogramm ansehenSie können sich eingehend mit jQuery und seinen verschiedenen Anwendungen vertraut machen für Live-Online-Schulungen mit 24-Stunden-Support und lebenslangem Zugriff.

Hast du eine Frage an uns? Erwähnen Sie sie im Kommentarbereich dieses Blogs und wir werden uns bei Ihnen melden.