20 Ausnahmen

Ausnahmen (Exceptions) sind eine objektorientierte Form der Fehlerbehandlung, die heutzutage in nahezu jeder modernen Programmiersprache anzutreffen ist.

Wir werden uns im weiteren Verlauf zunächst mit den syntaktischen Grundlagen und den Besonderheiten der Ausnahmen vertraut machen. Abschließend besprechen wir ausnahmensichere Klassen.

20.1 Warum Ausnahmen?

Nehmen wir als Beispiel einmal eine in der Praxis wohl unsinnige Funktion splitString, die einen aus einer geraden Anzahl von Zeichen bestehenden String in zwei gleich große Hälften teilt und diese als Paar zurückliefert:

pair<string, string> splitString(const string& s) {  auto len = s.length() / 2;  pair<string, string> p;  p.first = s.substr(0, len); p.second = s.substr(len); ...

Get C++: Eine kompakte Einführung now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.