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

truewenn 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; falseAndernfalls .

Hinweise

Der Memberoperator gibt this < &rightzurü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.