home | help
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  de-
     fine
	additional error codes. Because the appropriate specialization of
	std::is_error_code_enum is provided, values of type std::io_errc are im-
     plicitly
	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 condi-
     tion
	(C++11) 			   (function)

Helper classes
	is_error_code_enum<std::io_errc>  extends  the	type  trait  std::is_er-
     ror_code_enum to
	(C++11) 			 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
	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)

http://cppreference.com 	   2024.06.10			 std::io_errc(3)

home | help