std::io_errc
From cppreference.com
| Defined in header <ios>
|
||
enum class io_errc { stream = 1, }; |
(since C++11) | |
The scoped enumeration std::io_errc defines the error codes reported by I/O streams in std::ios_base::failure exception objects. Only one error code (std::io_errc::stream) is required, although the implementation may define additional error codes. Because the appropriate specialization of std::is_error_code_enum is provided, values of type std::io_errc are implicitly convertible to std::error_code.
Member constants
| Enumeration constant | Value |
stream
|
1
|
Non-member functions
| constructs an iostream error code (function) | |
| constructs an iostream error condition (function) |
Helper classes
| extends the type trait std::is_error_code_enum to identify iostream error codes (class template specialization) |
Example
Run this code
#include <fstream>
#include <iostream>
int main()
{
std::ifstream f("doesn't exist");
try
{
f.exceptions(f.failbit);
}
catch (const std::ios_base::failure& e)
{
std::cout << "Caught an ios_base::failure.\n";
if (e.code() == std::io_errc::stream)
std::cout << "The error code is std::io_errc::stream\n";
}
}
Output:
Caught an ios_base::failure.
The error code is std::io_errc::stream
See also
(C++11) |
holds a platform-dependent error code (class) |
(C++11) |
holds a portable error code (class) |
| stream exception (public member class of std::ios_base)
|