error_category-Klasse
Stellt die abstrakte, allgemeine Basis für Objekte dar, die eine Fehlercodekategorie beschreibt.
Syntax
class error_category;
constexpr error_category() noexcept;
virtual ~error_category();
error_category(const error_category&) = delete
Hinweise
error_category
wird von zwei vordefinierten Objekten implementiert: generic_category und system_category.
Member
TypeDefs
Name | Beschreibung |
---|---|
value_type | Ein Typ, der den gespeicherten Fehlercodewert darstellt. |
Functions
Name | Beschreibung |
---|---|
default_error_condition | Speichert den Fehlercodewert für ein Fehlerbedingungsobjekt. |
equivalent | Gibt einen Wert zurück, der angibt, ob Fehlerobjekte gleichwertig sind. |
generic_category | |
message | Gibt den Namen des angegebenen Fehlercodes zurück. |
name | Gibt den Namen der Kategorie zurück. |
system_category |
Operatoren
Name | Beschreibung |
---|---|
operator= | Zuweisungsoperator. |
operator== | Prüft auf Gleichheit zwischen error_category -Objekten. |
operator!= | Prüft auf Ungleichheit zwischen error_category -Objekten. |
operator< | Testet, ob das error_category-Objekt kleiner ist als das error_category -Objekt, das für den Vergleich übergeben wurde. |
default_error_condition
Speichert den Fehlercodewert für ein Fehlerbedingungsobjekt.
virtual error_condition default_error_condition(int _Errval) const;
Parameter
_Errval
Der Fehlercodewert, der in error_condition gespeichert werden soll.
Rückgabewert
Gibt error_condition(_Errval, *this)
zurück.
Hinweise
equivalent
Gibt einen Wert zurück, der angibt, ob Fehlerobjekte gleichwertig sind.
virtual bool equivalent(value_type _Errval,
const error_condition& _Cond) const;
virtual bool equivalent(const error_code& _Code,
value_type _Errval) const;
Parameter
_Errval
Der zu vergleichende Fehlercodewert.
_Cond
Das zu vergleichende error_condition-Objekt.
_Code
Das zu vergleichende error_code-Objekt.
Rückgabewert
true
, wenn Kategorie und Wert gleich sind; andernfalls false
.
Hinweise
Die erste Memberfunktion gibt *this == _Cond.category() && _Cond.value() == _Errval
zurück.
Die zweite Memberfunktion gibt *this == _Code.category() && _Code.value() == _Errval
zurück.
generic_category
const error_category& generic_category();
message
Gibt den Namen des angegebenen Fehlercodes zurück.
virtual string message(error_code::value_type val) const = 0;
Parameter
val
Der zu beschreibende Fehlercodewert.
Rückgabewert
Gibt einen beschreibenden Namen der Fehlercode-Wert für die Kategorie zurück. Wenn der Fehlercode nicht erkannt wird, wird zurückgegeben "unknown error"
.
Hinweise
name
Gibt den Namen der Kategorie zurück.
virtual const char *name() const = 0;
Rückgabewert
Gibt den Namen der Kategorie als Bytezeichenfolge zurück, die mit null endet.
operator =
error_category& operator=(const error_category&) = delete;
operator==
Prüft auf Gleichheit zwischen error_category
-Objekten.
bool operator==(const error_category& right) const;
Parameter
right
Das Objekt, das auf Gleichheit getestet werden soll.
Rückgabewert
true
wenn die Objekte gleich sind; false
wenn die Objekte nicht gleich sind.
Hinweise
Dieser Memberoperator gibt this == &right
zurück.
operator!=
Prüft auf Ungleichheit zwischen error_category
-Objekten.
bool operator!=(const error_category& right) const;
Parameter
right
Das Objekt, das auf Ungleichheit geprüft werden soll.
Rückgabewert
true
wenn das error_category
Objekt nicht gleich dem Objekt ist, das error_category
rechts übergeben wird; andernfalls false
.
Hinweise
Der Memberoperator gibt (!*this == right)
zurück.
operator<
Testet, ob das error_category-Objekt kleiner ist als das error_category
-Objekt, das für den Vergleich übergeben wurde.
bool operator<(const error_category& right) const;
Parameter
right
Das zu vergleichende error_category
-Objekt.
Rückgabewert
true
wenn das error_category
Objekt kleiner als das objekt ist, das error_category
zum Vergleich übergeben wird; false
Andernfalls .
Hinweise
Der Memberoperator gibt this < &right
zurück.
system_category
const error_category& system_category();
value_type
Ein Typ, der den gespeicherten Fehlercodewert darstellt.
typedef int value_type;
Hinweise
Diese Typdefinition ist ein Synonym für int
.