table of contents
        
      
      
    | std::io_errc(3) | C++ Standard Libary | std::io_errc(3) | 
NAME¶
std::io_errc - std::io_errc
Synopsis¶
 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¶
 make_error_code(std::io_errc) constructs an iostream error code
  
   (C++11) (function)
  
   make_error_condition(std::io_errc) constructs an iostream error code
  
   (C++11) (function)
Helper classes¶
 is_error_code_enum<std::io_errc> extends the type trait
    std::is_error_code_enum to
  
   (C++11) identify iostream error codes
  
   (class template specialization)
Example¶
// Run this code
  
   #include <iostream>
  
   #include <fstream>
  
   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¶
 error_code holds a platform-dependent error code
  
   (C++11) (class)
  
   error_condition holds a portable error code
  
   (C++11) (class)
  
   failure stream exception
  
   (public member class of std::ios_base)
| 2022.07.31 | http://cppreference.com |