Frage zu try catch
-
Hey, kann mir jemand sagen wie ich catch umschreiben muss damit alle Zeichen außer +,-,*,/ abgefangen werden ?

case 3: { cout <<"\n\n\tBitte geben Sie denn Operator ein, zulaessig sind(+,-,*,/):"; try { Operator=0; cin >> Operator; if(cin.fail()) { throw("Ungueltiger Operator!"); // Um ein exeption auszulösen } } catch (const char* str) // Fängt denn Fehler auf { cout << "Fehlerhafte Eingabe: " << str << endl; system("pause"); cin.clear(); // Falls eine falsche Eingabe gemacht wurde cin.ignore(std::numeric_limits<int>::max(),'\n'); // Puffer löschen } break; }//case 3
-
void test(void) { try { std::cout << "Bitte '+', '-', '*' oder '/' eingeben:" << std::endl; char c; do { c = std::cin.get(); } while(c == '\n'); if(strchr("+-*/", c) == NULL) { throw std::invalid_argument("Falsche eingabe!"); } std::cout << "Okay.\n" << std::endl; } catch(std::exception &e) { std::cout << "Fehler: " << e.what() << '\n' << std::endl; } } int main(int argc, char* argv[]) { for(;;) { test(); } }
-
Dieser Thread wurde von Moderator/in Martin Richter aus dem Forum MFC (Visual C++) in das Forum C++ (alle ISO-Standards) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Sollte das wirklich ein "Einsatzgebiet" für Try/Catch sein ?
-
Ich denke es geht ehr ums verständis....
-
unsure schrieb:
Sollte das wirklich ein "Einsatzgebiet" für Try/Catch sein ?
Also ich finde es immer ziemlich cool wenn sich jemand einen Ball über linke Schulter wirft, ihn mit der Hacke über die rechte kickt und ihn dann wieder auffängt. Gibs zu, du bist bloß neidisch

Finnegan
-
@DeathcubeUK Danke für die Mühe

-
Hi,
lass den ganzen Krämpel weg,das macht mehr Probleme als es nutzen bringt.
Es gibt keine Ausnahmen.Selbst wenn Du Datenbanken über ODBC verwendest, bau lieber einen Wrapper um dessen exceptions, um Dich von diesem Fehler -Anschlussteufel zu isolieren.
Liebe grüße
K.