Ich habe diesen einfachen Code:
%Vor%Um dies zu vervollständigen, ist dies der Kompilierbefehl:
%Vor%Die Version des Compilers ist g ++ (GCC) 6.1.1 .
Plattform: arch-linux 4.7.2-1 .
Wie Sie sich vorstellen können, existiert die Datei nicht, deshalb wird die Methode file.open(...)
eine Ausnahme auslösen. Das Problem ist, wenn ich den Code ausführen eine Ausnahme wird nicht behandelt und std::terminate
wird aufgerufen.
Das Seltsame ist die Ausgabe:
%Vor% Wie Sie lesen können, ist die Klasse zum Werfen ein std::ios_base::failure
, aber mein Fang ist die richtige Klasse.
Meine Frage ist: Was vermisse ich?
Tags und Links c++ exception-handling c++11 system-error