Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

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
       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_er-
       ror_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)

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

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::io_errc&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help