Sdílet prostřednictvím


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_categoryse 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

trueje-li kategorie a hodnota rovna; v opačném případě . false

Poznámky

První členová funkce vrátí *this == _Cond.category() && _Cond.value() == _Errvalhodnotu .

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

trueerror_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

trueje-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.