error_condition-Klasse
Stellt benutzerdefinierte Fehlercodes dar.
Syntax
class error_condition;
Hinweise
Ein Objekt vom Typ error_condition
enthält einen Fehlercodewert und einen Zeiger auf ein Objekt, das eine category (Kategorie) von Fehlercodes darstellt, die für berichtete benutzerdefinierte Fehlercodes verwendet werden.
Member
Konstruktoren
Name | Beschreibung |
---|---|
error_condition | Konstruiert ein Objekt vom Typ error_condition . |
TypeDefs
Name | Beschreibung |
---|---|
value_type | Ein Typ, der den gespeicherten Fehlercodewert darstellt. |
Functions
Name | Beschreibung |
---|---|
assign | Weist einen Fehlercodewert und die Kategorie an eine Fehlerbedingung zurück. |
category | Gibt die Fehlerkategorie zurück. |
clear | Löscht den Fehlercodewert und die Kategorie. |
message | Gibt den Namen des Fehlercodes zurück. |
Operatoren
Name | Beschreibung |
---|---|
operator== | Prüft auf Gleichheit zwischen error_condition -Objekten. |
operator!= | Prüft auf Ungleichheit zwischen error_condition -Objekten. |
operator< | Testet, ob das error_condition -Objekt kleiner ist als das error_code -Objekt, das für den Vergleich übergeben wurde. |
operator= | Weist dem error_condition -Objekt einen neuen Enumerationswert zu. |
operator bool | Wandelt eine Variable vom Typ error_condition um. |
Zuweisen
Weist einen Fehlercodewert und die Kategorie an eine Fehlerbedingung zurück.
void assign(value_type val, const error_category& _Cat);
Parameter
val
Der Fehlercodewert, der in error_code
gespeichert werden soll.
_Katze
Die Fehlerkategorie, die in error_code
gespeichert werden soll.
Hinweise
Die Memberfunktion speichert "val" als Fehlercodewert und als Zeiger auf _Cat.
category
Gibt die Fehlerkategorie zurück.
const error_category& category() const;
Rückgabewert
Ein Verweis auf die gespeicherte Fehlerkategorie.
Hinweise
clear
Löscht den Fehlercodewert und die Kategorie.
clear();
Hinweise
Die Memberfunktion speichert einen Fehlercodewert „Null“ und einen Zeiger auf das Objekt generic_category.
error_condition
Konstruiert ein Objekt vom Typ error_condition
.
error_condition();
error_condition(value_type val, const error_category& _Cat);
template <class _Enum>
error_condition(_Enum _Errcode,
typename enable_if<is_error_condition_enum<_Enum>::value,
error_code>::type* = 0);
Parameter
val
Der Fehlercodewert, der in error_condition
gespeichert werden soll.
_Katze
Die Fehlerkategorie, die in error_condition
gespeichert werden soll.
_Errcode
Der Enumerationswert, der in error_condition
gespeichert werden soll.
Hinweise
Der erste Konstruktor speichert einen Fehlercodewert „Null“ und einen Zeiger auf generic_category.
Der zweite Konstruktor speichert "val" als Fehlercodewert und als Zeiger auf error_category.
Der dritte Konstruktor speichert (value_type)_Errcode
als Fehlercodewert und einen Zeiger auf generic_category.
message
Gibt den Namen des Fehlercodes zurück.
string message() const;
Rückgabewert
Ein string
, der den Namen des Fehlercodes darstellt.
Hinweise
Diese Memberfunktion gibt category().message(value())
zurück.
operator==
Prüft auf Gleichheit zwischen error_condition
-Objekten.
bool operator==(const error_condition& right) const;
Parameter
right
Die Objekte, die auf Gleichheit getestet werden sollen.
Rückgabewert
true
wenn die Objekte gleich sind; false
wenn Objekte nicht gleich sind.
Hinweise
Der Memberoperator gibt category() == right.category() && value == right.value()
zurück.
operator!=
Prüft auf Ungleichheit zwischen error_condition
-Objekten.
bool operator!=(const error_condition& right) const;
Parameter
right
Das Objekt, das auf Ungleichheit geprüft werden soll.
Rückgabewert
true
wenn das error_condition
Objekt nicht gleich dem Objekt ist, das error_condition
rechts übergeben wird; andernfalls false
.
Hinweise
Der Memberoperator gibt !(*this == right)
zurück.
operator<
Testet, ob das error_condition
-Objekt kleiner ist als das error_code
-Objekt, das für den Vergleich übergeben wurde.
bool operator<(const error_condition& right) const;
Parameter
right
Das zu vergleichende error_condition
-Objekt.
Rückgabewert
true
wenn das error_condition
Objekt kleiner als das objekt ist, das error_condition
zum Vergleich übergeben wird; false
Andernfalls .
Hinweise
Der Memberoperator gibt category() < right.category() || category() == right.category() && value < right.value()
zurück.
operator =
Weist dem error_condition
-Objekt einen neuen Enumerationswert zu.
template <class _Enum>
error_condition(_Enum error,
typename enable_if<is_error_condition_enum<_Enum>::value,
error_condition>::type&
operator=(Enum _Errcode);
Parameter
_Errcode
Der Enumerationswert, der dem error_condition
-Objekt zugewiesen wird.
Rückgabewert
Ein Verweis auf das error_condition
-Objekt, dem der neue Enumerationswert durch die Memberfunktion zugewiesen wird.
Hinweise
Der Memberoperator speichert (value_type)error
als Fehlercodewert und einen Zeiger auf generic_category. Er gibt *this
zurück.
operator bool
Wandelt eine Variable vom Typ error_condition
um.
explicit operator bool() const;
Rückgabewert
Der boolesche Wert des Objekts error_condition
.
Hinweise
Der Operator gibt einen Wert zurück, der zu true
konvertiert werden kann, allerdings nur wenn value nicht null entspricht. Der Rückgabetyp kann nur zu bool
konvertiert werden, nicht zu void *
oder zu anderen bekannten skalaren Typen.
value
Gibt den gespeicherten Fehlercodewert zurück.
value_type value() const;
Rückgabewert
Der gespeicherte Fehlercodewert vom Typ value_type.
Hinweise
value_type
Ein Typ, der den gespeicherten Fehlercodewert darstellt.
typedef int value_type;
Hinweise
Die Typdefinition ist ein Synonym für int
.