<system_error> 运算符

operator==

测试运算符左侧的 对象是否等于右侧的 对象。

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);

参数

left
要测试是否相等的对象。

right
要测试是否相等的对象。

返回值

如果对象相等,则为 true;如果对象不相等,则为 false

备注

该函数返回 left.category() == right.category() && left.value() == right.value()

operator!=

测试运算符左侧的 对象是否不等于右侧的 对象。

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);

参数

left
要测试是否不相等的对象。

right
要测试是否不相等的对象。

返回值

如果 left 中的传入对象不等于 right 中的传入对象,则为 true;否则为 false

备注

该函数返回 !(left == right)

operator<

测试一个对象是否小于要比较的传入对象。

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);

参数

left
要比较的对象。

right
要比较的对象。

返回值

如果 left 中的传入对象小于 right 中的传入对象,则为 true;否则为 false

备注

该函数测试错误顺序。

operator<<

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