error_code Class

 

Represents low-level system errors that are implementation-specific.

class error_code;

An object of type error_code class stores an error code value and a pointer to an object that represents a category of error codes that describe reported low-level system errors.

Constructors

error_codeConstructs an object of type error_code.

Typedefs

value_typeA type that represents the stored error code value.

Member Functions

assignAssigns an error code value and category to an error code.
categoryReturns the error category.
clearClears the error code value and category.
default_error_conditionReturns the default error condition.
messageReturns the name of the error code.

Operators

operator==Tests for equality between error_code objects.
operator!=Tests for inequality between error_code objects.
operator<Tests if the error_code object is less than the error_code object passed in for comparison.
operator=Assigns a new enumeration value to the error_code object.
operator boolCasts a variable of type error_code.

Header: <system_error>

Namespace: std

Assigns an error code value and category to an error code.

void assign(value_type val, const error_category& _Cat);

Parameters

ParameterDescription
valThe error code value to store in the error_code.
_CatThe error category to store in the error_code.

Remarks

The member function stores val as the error code value and a pointer to _Cat.

Returns the error category.

const error_category& category() const;

Remarks

Clears the error code value and category.

clear();

Remarks

The member function stores a zero error code value and a pointer to the generic_category object.

Returns the default error condition.

error_condition default_error_condition() const;

Return Value

The error_condition specified by default_error_condition.

Remarks

This member function returns category().default_error_condition(value()).

Constructs an object of type error_code.

error_code();

error_code(value_type val, const error_category& _Cat);

template <class _Enum>
error_code(_Enum _Errcode,
    typename enable_if<is_error_code_enum<_Enum>::value,
    error_code>::type* = 0);

Parameters

ParameterDescription
valThe error code value to store in the error_code.
_CatThe error category to store in the error_code.
_ErrcodeThe enumeration value to store in the error_code.

Remarks

The first constructor stores a zero error code value and a pointer to the generic_category.

The second constructor stores val as the error code value and a pointer to error_category.

The third constructor stores (value_type)_Errcode as the error code value and a pointer to the generic_category.

Returns the name of the error code.

string message() const;

Return Value

A string representing the name of the error code.

Remarks

This member function returns category().message(value()).

Tests for equality between error_code objects.

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

Parameters

ParameterDescription
rightThe object to be tested for equality.

Return Value

true if the objects are equal; false if objects are not equal.

Remarks

The member operator returns category() == right.category() && value == right.value().

Tests for inequality between error_code objects.

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

Parameters

ParameterDescription
rightThe object to be tested for inequality.

Return Value

true if the error_code object is not equal to the error_code object passed in right; otherwise false.

Remarks

The member operator returns !(*this == right).

Tests if the error_code object is less than the error_code object passed in for comparison.

bool operator<(const error_code& right) const;

Parameters

ParameterDescription
rightThe error_code object to be compared.

Return Value

true if the error_code object is less than the error_code object passed in for comparison; Otherwise, false.

Remarks

The member operator returns category() < right.category() || category() == right.category() && value < right.value().

Assigns a new enumeration value to the error_code object.

template <class _Enum>
typename enable_if<is_error_code_enum<_Enum>::value,
    error_code>::type&
 operator=(_Enum _Errcode);

Parameters

ParameterDescription
_ErrcodeThe enumeration value to assign to the error_code object.

Return Value

A reference to the error_code object that is being assigned the new enumeration value by the member function.

Remarks

The member operator stores (value_type)_Errcode as the error code value and a pointer to the generic_category. It returns *this.

Casts a variable of type error_code.

explicit operator bool() const;

Return Value

The Boolean value of the error_code object.

Remarks

The operator returns a value convertible to true only if value is not equal to zero. The return type is convertible only to bool, not to void * or other known scalar types.

Returns the stored error code value.

value_type value() const;

Return Value

The stored error code value of type value_type.

Remarks

A type that represents the stored error code value.

typedef int value_type;

Remarks

This type definition is a synonym for int.

error_category Class
<system_error>

Show: