std::basic_ios<CharT,Traits>::exceptions
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Input/output library
Print functions (C++23)
Buffers
(C++23)
(C++98/26*)
(C++20)
Streams
Abstractions
File I/O
String I/O
Array I/O
(C++23)
(C++23)
(C++23)
(C++98/26*)
(C++98/26*)
(C++98/26*)
Synchronized Output
(C++20)
Types
Error category interface
(C++11)
(C++11)
std::basic_ios
Member functions
State functions
Formatting
Miscellaneous
basic_ios::exceptions
Protected member functions
(C++11)
(C++11)
(C++11)
std::ios_base::iostate exceptions() const;
(1)
void exceptions( std::ios_base::iostate except );
(2)
Gets and sets the exception mask of the stream. The exception mask determines which error states trigger exceptions of type failure .
1) Returns the exception mask.
2) Sets the exception mask to except. If the stream has an error state covered by the exception mask when called, an exception is immediately triggered.
Contents
[edit] Parameters
except
-
exception mask
[edit] Return value
1) The current exception mask.
2) (none)
[edit] Notes
This section is incomplete
Reason: discuss LWG2349 and link from ios_base::clear, and from (un)formatted(i/o)utputfunction requirement pages (or perhaps the behavior should be fully elaborated on the requirement pages and linked from here). See also stackoverflow.com/a/35089910
Reason: discuss LWG2349 and link from ios_base::clear, and from (un)formatted(i/o)utputfunction requirement pages (or perhaps the behavior should be fully elaborated on the requirement pages and linked from here). See also stackoverflow.com/a/35089910
[edit] Example
Run this code
#include <fstream> #include <iostream> int main() { int ivalue; try { std::ifstream in("in.txt"); in.exceptions(std::ifstream::failbit); // may throw in >> ivalue; // may throw } catch (const std::ios_base::failure & fail) { // handle exception here std::cout << fail.what() << '\n'; } }
Possible output:
basic_ios::clear: iostream error