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
Jméno | popis |
---|---|
value_type | Typ, který představuje uloženou hodnotu kódu chyby. |
Funkce
Jméno | 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
Jméno | 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.
Vrácená 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.
Vrácená 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.
Vrácená 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
Název
Vrátí název kategorie.
virtual const char *name() const = 0;
Vrácená 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
Právo
Objekt, který se má testovat na rovnost.
Vrácená 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
Právo
Objekt, který se má testovat na nerovnost.
Vrácená 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
Právo
Objekt error_category
, který se má porovnat.
Vrácená 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
.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro