Condividi tramite


Classe error_category

Rappresenta la base comune astratta per gli oggetti che descrive una categoria di codici di errore.

Sintassi

class error_category;

constexpr error_category() noexcept;
virtual ~error_category();
error_category(const error_category&) = delete

Osservazioni:

Due oggetti predefiniti implementano error_category: generic_category e system_category.

Membri

Typedef

Nome Descrizione
value_type Tipo che rappresenta il valore del codice di errore archiviato.

Funzioni

Nome Descrizione
default_error_condition Archivia il valore di codice di errore per un oggetto condizione di errore.
equivalent Restituisce un valore che specifica se gli oggetti di errore sono equivalenti.
generic_category
message Restituisce il nome del codice di errore specificato.
name Restituisce il nome della categoria.
system_category

Operatori

Nome Descrizione
operator= Operatore di assegnazione.
operator== Verifica l'uguaglianza tra oggetti error_category.
operator!= Verifica la disuguaglianza tra oggetti error_category.
operator< Verifica se l'oggetto error_category è più piccolo dell'oggetto error_category passato per il confronto.

default_error_condition

Archivia il valore di codice di errore per un oggetto condizione di errore.

virtual error_condition default_error_condition(int _Errval) const;

Parametri

_Errval
Valore del codice di errore da archiviare nella error_condition.

Valore restituito

Restituisce error_condition(_Errval, *this).

Osservazioni:

equivalent

Restituisce un valore che specifica se gli oggetti di errore sono equivalenti.

virtual bool equivalent(value_type _Errval,
    const error_condition& _Cond) const;

virtual bool equivalent(const error_code& _Code,
    value_type _Errval) const;

Parametri

_Errval
Il valore del codice di errore da confrontare.

_Cond
L'oggetto error_condition da confrontare.

_Codice
L'oggetto error_code da confrontare.

Valore restituito

true se la categoria e il valore sono uguali, in caso contrario false.

Osservazioni:

La prima funzione membro restituisce *this == _Cond.category() && _Cond.value() == _Errval.

La seconda funzione membro restituisce *this == _Code.category() && _Code.value() == _Errval.

generic_category

const error_category& generic_category();

messaggio

Restituisce il nome del codice di errore specificato.

virtual string message(error_code::value_type val) const = 0;

Parametri

val
Il valore del codice di errore da confrontare.

Valore restituito

Restituisce un nome descrittivo del valore del codice di errore per la categoria. Se il codice di errore non è riconosciuto, restituisce "unknown error".

Osservazioni:

name

Restituisce il nome della categoria.

virtual const char *name() const = 0;

Valore restituito

Restituisce il nome della categoria come una stringa di byte che termina con Null.

operator=

error_category& operator=(const error_category&) = delete;

operator==

Verifica l'uguaglianza tra oggetti error_category.

bool operator==(const error_category& right) const;

Parametri

right
Oggetto di cui verificare l'uguaglianza.

Valore restituito

true se gli oggetti sono uguali; false se gli oggetti non sono uguali.

Osservazioni:

Questo operatore membro restituisce this == &right.

operator!=

Verifica la disuguaglianza tra oggetti error_category.

bool operator!=(const error_category& right) const;

Parametri

right
Oggetto di cui verificare la disuguaglianza.

Valore restituito

truese l'oggetto error_category non è uguale all'oggetto error_category passato a destra; in caso contrariofalse, .

Osservazioni:

L'operatore membro restituisce (!*this == right).

operator<

Verifica se l'oggetto error_category è più piccolo dell'oggetto error_category passato per il confronto.

bool operator<(const error_category& right) const;

Parametri

right
L'oggetto error_category da confrontare.

Valore restituito

true se l'oggetto error_category è minore dell'oggetto passato per il error_category confronto; In caso contrario, false.

Osservazioni:

L'operatore membro restituisce this < &right.

system_category

const error_category& system_category();

value_type

Tipo che rappresenta il valore del codice di errore archiviato.

typedef int value_type;

Osservazioni:

La definizione del tipo è un sinonimo di int.