Exceptions Frage
-
Hallo,
ich habe folgendes Problem: Ich möchte im Dos den User auffordern eine 1 für Weiter und eine 0 für Abbrechen eingibt. Das klappt auch bis jetzt, wenn man nur 0 und 1 eingibt. Und ich möchte es mit try-catch Anweisungen es abfangen.
Ich habe bis jetzt nicht mit Exeptions gearbeitet. Kann mir jemand hier weiterhelfen?
Danke
Hier mein Code:while(eintrag) { E_WahlenDienst waehler; //Ortsabfrage: cout << "Ort: "; cin >> tempOrt; waehler.setOrt(tempOrt); //Parteiabfrage: cout << "Partei: "; cin >> tempPartei; waehler.setPartei(tempPartei); // Aktuelle Eingabe in die Datei schreiben: File << waehler.getOrt() << "," << waehler.getPartei() << endl; //Abfrage, ob man noch mal waehlen will: cout << "[1]Weiter ; [0]Abbrechen:"; cin >> eintrag; }
-
Ist ein längeres Thema:
-
so:
if( eintrag == 0 ) throw "Ich muss noch viel über die richtige Verwendung von Exceptions lernen.";
-
hey danke. Das hat geklappt mit
if(eintrag==0) { throw "Ich glaube dass Dr.Prof lieber Dr.Fisch sein sollte aber ist ja auch egal"; }
-
also ich habe es ohne Exceptions gelöst:
if (File.is_open()) { //TempStrings erzeugen um zwischenzuspeichern string tempOrt; string tempPartei; string eintrag="j"; bool falscheEingabe=false; // Hier wäre eine Fehlerprüfung angebracht while(eintrag=="j") { E_WahlenDienst waehler; //Ortsabfrage: cout << "Ort: "; cin >> tempOrt; waehler.setOrt(tempOrt); //Parteiabfrage: cout << "Partei: "; cin >> tempPartei; waehler.setPartei(tempPartei); // Aktuelle Eingabe in die Datei schreiben: File << waehler.getOrt() << "," << waehler.getPartei() << endl; //Abfrage, ob man noch mal waehlen will: while(!falscheEingabe) { cout << endl << "Wollen Sie noch ein Eintrag machen?" << endl; cout << "Geben Sie [j] fuer JA und [n] fuer Nein." << endl << "\t"; cin >> eintrag; cout << endl; transform(eintrag.begin(), eintrag.end(), eintrag.begin(), tolower); if(eintrag=="j"||eintrag=="n") { falscheEingabe=true; } else { falscheEingabe=false; } } falscheEingabe=false; } File.close(); // Datei schließen }dieser Beitrag ist für Dr.Fisch :p
-
is besser so weil wen du den user aufforderst etwas zu tun kann das kein exception sein !

Mf Shade37337
-
Delikanli schrieb:
also ich habe es ohne Exceptions gelöst
Gut, dann kannst du dich als nächstes ja mit dem Thema der boolschen Logik auseinander setzen.
if(eintrag=="j"||eintrag=="n") { falscheEingabe=true; } else { falscheEingabe=false; }
falscheEingabe = eintrag == "j" || eintrag == "n";
-
falscheEingabe = eintrag == "j" || eintrag == "n";
string jn = eintrag; falscheEingabe = jn=="j"?jn=="j":(jn!="n"?(jn!="J"?(jn=="N"?jn!="n":jn=="N"):jn=="J"):jn!="j");
:p 
Greetz, Swordfish
PS: ioccc würdig?