std::make_error_code(std::io_errc)
来自cppreference.com
在标头 <ios> 定义
|
||
std::error_code make_error_code( std::io_errc e ) noexcept; |
(C++11 起) | |
从 std::io_errc 类型的值构造一个 std::error_code 对象,如同通过 return std::error_code(static_cast<int>(e), std::iostream_category())。
此函数会被 std::error_code 的带有 std::io_errc 参数的构造函数调用。
参数
e | - | 错误码编号 |
返回值
std::error_code 类型的值,保有来自 e 的错误码编号,关联到错误类别 "iostream"。
示例
运行此代码
#include <iostream> #include <system_error> int main() { std::error_code ec = std::make_error_code(std::io_errc::stream); // 因为有重载方法和 is_error_code_enum 特化,所以可以这样操作 ec = std::io_errc::stream; std::cout << "来自 io_errc::stream 的错误码具有类别 " << ec.category().name() << '\n'; }
输出:
来自 io_errc::stream 的错误码具有类别 iostream
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 2087 | C++11 | make_error_code(io_errc) 未声明为 noexcept
|
声明为 noexcept |
参阅
(C++11) |
保有依赖于平台的错误码 (类) |
(C++11) |
输入/输出流的错误码 (枚举) |
(C++11) |
构造 std::errc 错误码 (函数) |
构造一个 future error_code (函数) |