std::error_code::error_code
来自cppreference.com
< cpp | error | error code
error_code() noexcept; |
(1) | (C++11 起) |
error_code( int ec, const error_category& ecat ) noexcept; |
(2) | (C++11 起) |
template< class ErrorCodeEnum > error_code( ErrorCodeEnum e ) noexcept; |
(3) | (C++11 起) |
error_code( const error_code& other ) = default; |
(4) | (C++11 起) (隐式声明) |
error_code( error_code&& other ) = default; |
(5) | (C++11 起) (隐式声明) |
构造新的错误码。
1) 构造带默认值的错误码。等价于 error_code(0, std::system_category()) 。
3) 从错误码枚举
e
构造 error_code 。等价于 make_error_code(e) ,其中 make_error_code
仅由实参依赖查找找到。此重载只有在std::is_error_code_enum<ErrorCodeEnum>::value 为 true 时才会参与重载决议。4,5) 隐式定义的复制构造函数与移动构造函数。以
other
的内容初始化错误码。参数
other | - | 用以初始化的另一错误码 |
ec | - | 用以构造的平台依赖的错误码 |
ecat | - | 对应 ec 的 error_category
|
e | - | 用以构造的错误码枚举 |
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 3629 | C++11 | 仅使用 std::make_error_code 重载
|
使用 ADL 所找到的重载 |
参阅
(C++11) |
构造 std::errc 错误码 (函数) |
构造一个 iostream 错误码 (函数) | |
构造一个 future error_code (函数) |