# std::error_condition

< cpp‎ | error

定义于头文件 `<system_error>` |  |
class error_condition; |  | (C++11 起)

`std::error_condition` 是独立于平台的错误码。类似于 std::error_code ，它为整数值和 std::error_category 所唯一标识，但不同于 std::error_code ，该值不依赖平台。

典型的实现保有整数数据成员（该值）和指向一个 std::error_category 的指针。

### 成员函数

(构造函数) | 构造 `error_condition` (公开成员函数)
operator= | 替换内容 (公开成员函数)
assign | 替换内容 (公开成员函数)
clear | 设置 error_condition 为值 0 ，于 generic_category 中 (公开成员函数)
value | 获得 error_condition 的值 (公开成员函数)
category | 获得此 `error_condition` 的 `error_category` (公开成员函数)
message | 获得解释性字符串 (公开成员函数)
operator bool | 检查值是否非零 (公开成员函数)

### 非成员函数

operator==operator!=operator<operator<=> (C++20 中移除)(C++20 中移除)(C++20) | 比较 `error_condition` 和 `error_code` (函数)

### 辅助类

is_error_condition_enum (C++11) | 鉴别枚举是否可作为 std::error_condition (类模板)
std::hash<std::error_condition> (C++17) | std::error_condition 的哈希支持 (类模板特化)

### 参阅

error_code (C++11) | 保有依赖于平台的错误码 (类)
error_category (C++11) | 错误类别的基类 (类)