March 2018
Intermediate to advanced
228 pages
3h 44m
German
Ausnahmebehandlung in C++ geschieht mit try- und catch-Blöcken:
try{
// Achte auf unzulaessige Dateinamen oder fehlende
// Datei-Handles.
}
catch (const BadFileName& e){
// Behandle BadFileName-Ausnahmen.
}
catch (const HandlesGone& e){
// Behandle HandlesGone-Ausnahmen.
}
Ein try-Block grenzt einen Kontext ab, in dem Ausnahmen ausgelöst oder »geworfen« werden können. Wenn eine Ausnahme in einem try-Block ausgelöst wird, springt die Ausführung unmittelbar zu dem catch-Block, der für die Behandlung dieser Ausnahme zuständig ist. Dies gilt natürlich nur, falls ein solcher Block existiert.
Der throw-Operator löst eine Ausnahme aus:
throw e;
Anhand des Typs der Ausnahme wird ermittelt, welcher catch-Block ...