error_category – třída
Představuje abstraktní, společný základ pro objekty, které popisují kategorii kódů chyb.
Syntaxe
class error_category;
constexpr error_category() noexcept;
virtual ~error_category();
error_category(const error_category&) = delete
Poznámky
Implementují error_category
se dva předdefinované objekty: generic_category a system_category.
Členové
Typedefs
Název | Popis |
---|---|
value_type | Typ, který představuje uloženou hodnotu kódu chyby. |
Funkce
Název | Popis |
---|---|
default_error_condition | Uloží hodnotu kódu chyby pro objekt chybového stavu. |
ekvivalentní | Vrátí hodnotu, která určuje, zda jsou objekty chyby ekvivalentní. |
generic_category | |
message | Vrátí název zadaného kódu chyby. |
Jméno | Vrátí název kategorie. |
system_category |
Operátory
Název | Popis |
---|---|
operator= | Operátor přiřazení. |
operator== | Testuje rovnost mezi error_category objekty. |
operator!= | Testuje nerovnost mezi error_category objekty. |
operator< | Testuje, zda je objekt error_category menší než error_category objekt předaný pro porovnání. |
default_error_condition
Uloží hodnotu kódu chyby pro objekt chybového stavu.
virtual error_condition default_error_condition(int _Errval) const;
Parametry
_Errval
Hodnota kódu chyby, která se má uložit do error_condition.
Návratová hodnota
Vrací objekt error_condition(_Errval, *this)
.
Poznámky
ekvivalentní
Vrátí hodnotu, která určuje, zda jsou objekty chyby ekvivalentní.
virtual bool equivalent(value_type _Errval,
const error_condition& _Cond) const;
virtual bool equivalent(const error_code& _Code,
value_type _Errval) const;
Parametry
_Errval
Hodnota kódu chyby, která se má porovnat.
_Cond
Objekt error_condition , který chcete porovnat.
_Kód
Objekt error_code , který chcete porovnat.
Návratová hodnota
true
je-li kategorie a hodnota rovna; v opačném případě . false
Poznámky
První členová funkce vrátí *this == _Cond.category() && _Cond.value() == _Errval
hodnotu .
Druhá členová funkce vrátí *this == _Code.category() && _Code.value() == _Errval
.
generic_category
const error_category& generic_category();
zpráva
Vrátí název zadaného kódu chyby.
virtual string message(error_code::value_type val) const = 0;
Parametry
Val
Hodnota kódu chyby, která se má popsat.
Návratová hodnota
Vrátí popisný název hodnoty kódu chyby pro kategorii. Pokud kód chyby není rozpoznán, vrátí hodnotu "unknown error"
.
Poznámky
name
Vrátí název kategorie.
virtual const char *name() const = 0;
Návratová hodnota
Vrátí název kategorie jako řetězec s ukončením bajtů s hodnotou null.
operator=
error_category& operator=(const error_category&) = delete;
operator==
Testuje rovnost mezi error_category
objekty.
bool operator==(const error_category& right) const;
Parametry
Vpravo
Objekt, který se má testovat na rovnost.
Návratová hodnota
true
jsou-li objekty stejné; false
pokud se objekty nerovnají.
Poznámky
Tento operátor členu vrátí this == &right
.
operator!=
Testuje nerovnost mezi error_category
objekty.
bool operator!=(const error_category& right) const;
Parametry
Vpravo
Objekt, který se má testovat na nerovnost.
Návratová hodnota
true
error_category
pokud objekt není roven objektu error_category
předaný vpravo; jinak false
.
Poznámky
Operátor členu vrátí (!*this == right)
.
operator<
Testuje, zda je objekt error_category menší než error_category
objekt předaný pro porovnání.
bool operator<(const error_category& right) const;
Parametry
Vpravo
Objekt error_category
, který se má porovnat.
Návratová hodnota
true
je-li error_category
objekt menší než error_category
objekt předaný pro porovnání; V opačném případě . false
Poznámky
Operátor členu vrátí this < &right
.
system_category
const error_category& system_category();
value_type
Typ, který představuje uloženou hodnotu kódu chyby.
typedef int value_type;
Poznámky
Tato definice typu je synonymem pro int
.