Spec-Zone.ru › C++

std::make_error_code(std::io_errc)

Определено в заголовке <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);
 
    // This works because of the overloaded method
    //    and the is_error_code_enum specialization.
    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 Применимо к Поведение, как опубликовано Правильное поведение
LWG 2087 C++11 make_error_code(io_errc) не было объявлено noexcept объявлено noexcept

См. также

error_code
(C++11)
хранит платформозависимый код ошибки
(класс)
io_errc
(C++11)
коды ошибок потоков ввода/вывода
(перечисление)
make_error_code(std::errc)
(C++11)
создаёт значение кода ошибки для перечисления errc e
(функция)
make_error_code(std::future_errc)
(C++11)
создаёт код ошибки для объекта будущего
(функция)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/io_errc/make_error_code

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API