命名空间
变体
操作

std::make_error_condition(std::io_errc)

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

使用 std::error_condition 类型的值从 std::io_errc 类型的值构造一个对象,就像使用 return std::error_condition(static_cast<int>(e), std::iostream_category()) 一样。

内容

[编辑] 参数

e - 错误代码编号

[编辑] 返回值

一个 std::error_condition 类型的返回值,它保存与错误类别 "iostream" 关联的错误代码编号 e

[编辑] 示例

#include <iostream>
#include <system_error>
 
int main()
{
    std::error_condition ec = std::make_error_condition(std::io_errc::stream);
    std::cout << "error condition for io_errc::stream has value " << ec.value()
              << "\nand message \"" << ec.message() << "\"\n";
}

输出

error condition for io_errc::stream has value 1
and message "unspecified iostream_category error"

[编辑] 缺陷报告

以下行为改变缺陷报告被追溯应用到之前发布的 C++ 标准。

DR 应用于 已发布的行为 正确行为
LWG 2087 C++11 make_error_condition(io_errc) 未声明为 noexcept 声明为 noexcept

[编辑] 参见

保存一个可移植的错误代码
(类) [编辑]
(C++11)
IO 流错误代码
(枚举) [编辑]