catch/try



  • hi, sagt mal, was ich immernoch nicht so ganz kapiert habe:

    Was bedeuten try und catch? Ich meine, was machen die genau?



  • Nun, ganz einfach.

    Try -> versuchen. Man legt hier Anweisungen hinein die eine Exception werfen könnten. Mit catch (fangen) fängst Du dann diese wieder auf.

    Beispiel:

    try
    {
       CppBuch.lesen("Exceptions");
    }
    catch(const magNichtsLesen & err)
    {
        CppBuch.vorlesen("Exceptions");
    }
    catch(const stehtNichtDrinn & err)
    {
        TrashCan(err.BuchTitel);
    }
    catch(...)
    {
     cout<<"Da is irgendwas anderes schiefgelaufen"<<endl;
    }
    

    Wenn nun die Methode lesen des Objektes Buch eine Exception wird wird diese gefangen. Du kannst Exceptions anhand des Typs fangen, z.B. magNichtsLesen .
    Das wäre dann z.B. eine Klasse die Informationen über den Ausnahmefehlers hält.

    Ein catch(...) fängt alle Exceptions. Allerdings steht Dir hier keine Information zur verfügung.

    Schau mal ein wenig im Forum (suchfunktion) und bei Google nach. Findest ne menge Beispiele zu wenn die kurzerklärung nicht reicht.



  • Danke, deine Erklärung war schon richtig gut.

    try -Versuchen
    Catch -Fangen

    Das merk ich mir *g*


Anmelden zum Antworten