Namespaces
Variants

std:: make_error_code (std::io_errc)

From cppreference.net
< cpp ‎ | io ‎ | io errc
std::io_errc
Non-member functions
make_error_code (std::io_errc)
(C++11)
Helper classes
Определено в заголовочном файле <ios>
std:: error_code make_error_code ( std:: io_errc e ) noexcept ;
(начиная с C++11)

Создает объект std::error_code из значения типа std::io_errc как если бы с помощью 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 << "Error code from io_errc::stream has category "
              << ec.category().name() << '\n';
}

Вывод:

Error code from io_errc::stream has category iostream

Отчёты о дефектах

Следующие отчеты об изменениях поведения, содержащие исправления дефектов, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Applied to Behavior as published Correct behavior
LWG 2087 C++11 make_error_code(io_errc) не была объявлена noexcept объявлена noexcept

Смотрите также

(C++11)
содержит платформозависимый код ошибки
(класс)
(C++11)
коды ошибок потокового ввода-вывода
(перечисление)
создает значение кода ошибки для перечисления errc e
(функция)
создает код ошибки future
(функция)