std::make_error_code(std::io_errc)

来自cppreference.com
< cpp‎ | io‎ | io errc
在标头 <ios> 定义
std::error_code make_error_code(std::io_errc e )noexcept;
(C++11 起)

std::io_errc 类型的值构造一个 std::error_code 对象,如同通过 returnstd::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)
输入/输出流的错误码
(枚举)[编辑]
errc 枚举 e 创建错误码值
(函数)[编辑]
构造一个未来体错误码
(函数)[编辑]
close