std::error_code:: error_code
From cppreference.net
<
cpp
|
error
|
error code
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Diagnostics library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::error_code
| Member functions | ||||
|
error_code::error_code
|
||||
| Modifiers | ||||
| Observers | ||||
| Non-member functions | ||||
|
(until C++20)
(until C++20)
(C++20)
|
||||
| Helper classes | ||||
|
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
构造错误码。等效于
make_error_code
(
e
)
,其中
make_error_code
仅通过
实参依赖查找
才能找到。仅当
std::
is_error_code_enum
<
ErrorCodeEnum
>
::
value
为
true
时,此重载才会参与重载决议。
4,5)
隐式定义的拷贝构造函数和移动构造函数。使用
other
的内容初始化错误码。
参数
| other | - | 用于初始化的其他错误码 |
| ec | - | 用于构造的平台相关错误码 |
| ecat | - | 对应于 ec 的错误类别 |
| e | - | 用于构造的错误代码枚举 |
缺陷报告
下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。
| 问题报告 | 应用于 | 发布时的行为 | 正确行为 |
|---|---|---|---|
| LWG 3629 | C++11 |
仅使用了
std::make_error_code
重载
|
使用ADL查找的重载 |
参见
|
(C++11)
|
为
errc
枚举值
e
创建错误码
(函数) |
|
(C++11)
|
构造输入输出流错误码
(函数) |
|
构造 future 错误码
(函数) |