Wo Ausnahme auftritt
Wenn wir eine Software ausführen, erwarten wir, dass unsere Software in jeder Situation ordnungsgemäß funktioniert. In einigen Fällen treten jedoch einige Ereignisse auf, wenn der normale Ausführungfluss unserer Software gestoppt wird. Wenn wir also sagen, dass unsere Software robust sein muss, bedeutet dies, dass Software in jeder Situation ordnungsgemäß funktioniert.
Ausnahmebehandlung
C ++ - Ausnahmebehandlung wird verwendet, um die Fehlerbedingung in einem Programm systematisch zu verarbeiten, indem die erforderliche Maßnahmen ergriffen werden. Mit Ausnahmebehandlung können wir einfach verwalten und auf den Laufzeitfehler reagieren.
Versuche, fangen, werfen
Syntax
versuchen
Catch (type1 arg)
Catch (Typ2 arg)
----------
Catch (typen arg)
Erläuterung
Erstens schreiben wir das Keyword, um das Keyword zu schreiben versuchen. Nachdem wir den Try -Block beendet haben, müssen wir schreiben fangen Sofort blockieren. Wir können mehrere Fangblöcke in Sequenz schreiben. Aber wo Blockende versuchen, müssen alle Fangblöcke sofort geschrieben werden. Wenn wir nach dem Try -Block nicht sofort einen Catch -Block schreiben, kann ein Fehler auftreten. Wir gebrauchen Wurf Schlüsselwort im Try -Block.
Programmierbeispiel 1
# enthalten
Verwenden von Namespace STD;
int main ()
Cout<< “ Exception Handling Program :” ;
versuchen
30 werfen;
Cout<< “ \n Try ” ;
fangen (int e)
Cout<< “ \n Exception no : ” << e ;
Cout<< “ \n Testing The Last Line ” ;
Ausgang
Programmierung Erklärung
In diesem Programm -Beispiel versuchen wir zu zeigen, wie Ausnahme auftritt und wie man damit umgeht. In der Hauptfunktion nach dem Schreiben einer Ausgabeanweisung, die wir verwenden versuchen Block. Wurf Schlüsselwort wird im Try -Block verwendet. Nach dem Wurf Keyword verwenden wir eine Nummer 30. Es kann eine Zeichenfolge oder ein Doppel oder eine Schwimmer sein- jede Konstante, die wir verwenden können. Dann schreiben wir eine Cout -Anweisung. Diese Zeile kann jedoch nicht nach der Ausführung des Wurfs ausgeführt werden. Nachdem wir den Try -Block beendet haben, schreiben wir sofort Fangblock. Im Fangblock schreiben wir die Zeile (int e). Mit Hilfe des Keywords, den wir werfen, wird dieser Wert in die E -Variable kommen. Nachdem wir den Catch -Block beendet haben, schreiben wir eine Ausgabemodellanweisung "\ n testen die letzte Zeile". Nun ist die Frage, wann diese Zeile nach der Ausgabemodellanweisung im Fangblock ausgeführt wird?
Regeln des Versuchs, Fangs und werfen Block
Programmierbeispiel 2
# enthalten
Verwenden von Namespace STD;
int main ()
Cout<< “ Exception Handling Program :” ;
versuchen
if (i == 1)
1 werfen 1;
if (i == 2)
werfen 2;
if (i == 3)
werfen 3;
Cout<< “ \n Try ” ;
fangen (double e)
Cout<< “ \n Exception no : ” << e ;
fangen (int e)
Cout<< “ \n Exception no : ” << e ;
Cout<< “ \n Testing The Last Line ” ;
Ausgang
F. Wir können mehrere Wurfanweisungen in einem einzigen Try -Block schreiben.
Programmierbeispiel 3
# enthalten
Verwenden von Namespace STD;
int main ()
int i = 3;
Cout<< “ Exception Handling Program :” ;
versuchen
if (i == 1)
1 werfen 1;
if (i == 2)
werfen 2;
if (i == 3)
werfen 3;
Cout<< “ \n Try ” ;
fangen (int e)
Cout<< “ \n Exception no : ” << e ;
Cout<< “ \n Testing The Last Line ” ;
Ausgang
G. Wir können Wurfanweisung in einem Try -Block schreiben, ohne einen Wurfwert zu geben.
Programmierbeispiel 4
# enthalten
Verwenden von Namespace STD;
int main ()
Cout<< “ Exception Handling Program :” ;
int i = 3;
versuchen
if (i == 3)
Wurf ;
Cout<< “ \n Try ” ;
catch (int)
Cout<< “ \n Exception no : ” ;
Cout<< “ \n Testing The Last Line ” ;
Ausgang
Erläuterung
Hier schreiben wir Wurf Keyword, ohne einen Wert zu geben, und dann wird das Programm beendet, da hier nicht die richtige Ausnahmebehandlung stattfindet. Infolgedessen wird Catch Block nicht ausgeführt. In der Kompilierungszeit wird kein Fehler auftreten. In der Laufzeit wird das Programm jedoch mit einer Nachricht beendet, die „ohne aktive Ausnahme beendet“ beendet wird.
Abschluss
Wenn wir uns ausführlich über die Ausnahmebearbeitung besprechen, lernen wir hier, dass das Programm bereit sein muss, diese abnormale Situation zu verwalten, wenn eine abnormale Situation auftritt.