Compartir a través de


<system_error> Operadores

operator==

Comprueba si el objeto en el lado izquierdo del operador es igual al objeto del lado derecho.

bool operator==(const error_code& left,
    const error_condition& right);

bool operator==(const error_condition& left,
    const error_code& right);

bool operator==(const error_condition& left,
    const error_condition& right);

Parámetros

left
Objeto que se va a probar para comprobar la igualdad.

right
Objeto que se va a probar para comprobar la igualdad.

Valor devuelto

true si los objetos son iguales, false si no lo son.

Comentarios

Esta función devuelve left.category() == right.category() && left.value() == right.value().

operator!=

Comprueba si el objeto en el lado izquierdo del operador no es igual al objeto del lado derecho.

bool operator!=(const error_code& left, const error_condition& right);
bool operator!=(const error_condition& left, const error_code& right);
bool operator!=(const error_code& left, const error_code& right);
bool operator!=(const error_condition& left, const error_condition& right);

Parámetros

left
Objeto que se va a probar para la desigualdad.

right
Objeto que se va a probar para la desigualdad.

Valor devuelto

true si el objeto pasado en izquierdo no es igual al objeto pasado en right; de lo contrario, false.

Comentarios

Esta función devuelve !(left == right).

operator<

Prueba si un objeto es menor que el objeto pasado para la comparación.

template <class _Enum>
inline bool operator<(
    _Enum left,
    typename enable_if<is_error_code_enum<_Enum>::value,
    const error_code&>::type right);

template <class _Enum>
inline bool operator<(
    typename enable_if<is_error_code_enum<_Enum>::value,
    const error_code&>::type left, _Enum right);

template <class _Enum>
inline bool operator<(
    _Enum left,
    typename enable_if<is_error_condition_enum<_Enum>::value,
    const error_condition&>::type right);

template <class _Enum>
inline bool operator<(
    typename enable_if<is_error_condition_enum<_Enum>::value,
    const error_condition&>::type left, _Enum right);

Parámetros

left
Objeto que se va a comparar.

right
Objeto que se va a comparar.

Valor devuelto

true si el objeto pasado en left es menor que el objeto pasado en right; De lo contrario, false.

Comentarios

Esta función prueba el orden de error.

operator<<

Inserta un objeto error_code en el flujo de salida.

template <class charT, class traits>
basic_ostream<charT, traits>& operator<<(basic_ostream<charT, traits>& os, const error_code& ec);

Parámetros

os
Flujo de salida de destino.

ec
Objeto error_code que se va a generar.

Valor devuelto

Referencia al flujo de salida modificado.

Comentarios

Este operador hace el equivalente de os << ec.category().name() << ':' << ec.value().

Ejemplo

#include <iostream>
#include <system_error>

int main()
{
    std::error_code ec(1234, std::generic_category());
    std::cout << ec;
}
generic:1234