Bietet eine einheitliche Schnittstelle zur Fehlerbehandlung durch den throw-Ausdruck.
Alle von der Standardbibliothek erzeugten Ausnahmen erben von std::exception.
|
Alle Mitgliedsfunktionen von std::exception sind constexpr.
|
(seit C++26) |
Memberfunktionen
|
|
Konstruiert das Exception-Objekt
(öffentliche Elementfunktion)
|
|
|
Zerstört das Exception-Objekt
(virtuelle öffentliche Elementfunktion)
|
|
|
Kopiert Exception-Objekt
(öffentliche Elementfunktion)
|
|
|
Gibt einen erläuternden String zurück
(virtuelle öffentliche Elementfunktion)
|
Standardanforderungen für Ausnahmen
Jede Standardbibliotheksklasse
T
, die von
std::exception
abgeleitet ist, verfügt über die folgenden öffentlich zugänglichen Memberfunktionen, die jeweils
nicht mit einer Exception beenden
(bis C++11)
eine
nicht-werfende Exception-Spezifikation
besitzen
(seit C++11)
:
Der Kopierkonstruktor und der Kopierzuweisungsoperator erfüllen die folgende Nachbedingung:
-
Wenn zwei Objekte
lhs
und
rhs
beide den dynamischen Typ
T
haben und
lhs
eine Kopie von
rhs
ist, dann ist
std::
strcmp
(
lhs.
what
(
)
, rhs.
what
(
)
)
gleich
0
.
Die
what()
-Memberfunktion jedes solchen
T
erfüllt die für
std::exception::what()
spezifizierten Anforderungen.
Standardausnahmen
-
-
Hinweise
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
|
DR
|
Angewendet auf
|
Verhalten wie veröffentlicht
|
Korrektes Verhalten
|
|
LWG 471
|
C++98
|
Es gab keine Anforderung an Standardbibliotheksklassen, die von
std::exception
abgeleitet sind
|
hinzugefügt
|