Wenn es kracht
Bevor wir uns im Folgenden mit den fast 30 Regeln zur Fehlerbehandlung in den C++ Core Guidelines beschäftigen, stellt sich zuerst die elementare Frage, welche Aspekte eigentlich zur Fehlerbehandlung gehören. Sie sollte vier Punkte berücksichtigen: Sie muss Fehler erkennen, Informationen zu dem Fehler an einen Handler übermitteln, das Programm in einem gültigen Zustand halten sowie Ressourcenlecks vermeiden.
Abrahams Guarantees
Primär sollte man laut den C++ Core Guidelines Ausnahmen verwenden. David Abrahams, einer der Gründer der Boost-Library und ehemaliges Mitglied des ISO-C++-Standardisierungskomitees, formalisiert in seinem Dokument „Exception-Safety in Generic Components“, was Exception-Safety bedeutet. Die Abrahams Guarantees beschreiben einen grundlegenden Vertrag, der greift, wenn man Exception-sicheren Code analysiert. Die vier Abstufungen der Abrahams Guarantees lauten im Original:
• No-throw guarantee, also known as failure transparency: Operations are guaranteed to succeed and satisfy all requirements even in exceptional situations. If an exception
You’re reading a preview, subscribe to read more.
Start your free 30 days