From cppreference.com
voidsetstate(iostatestate);Sets the stream error flags state in addition to currently set flags. Essentially calls clear(rdstate()|state). May throw an exception.
Parameters
state - stream error state flags to set. It can be a combination of the following constants: Constant Explanation
no error
irrecoverable stream error
input/output operation failed (formatting or extraction error)
associated input sequence has reached end-of-file Return value
(none)
Example
Run this code
#include<iostream>#include<sstream>intmain(){std::ostringstreamstream;if(!stream.fail())std::cout<<"stream is not fail\n";stream.setstate(std::ios_base::failbit);if(stream.fail())std::cout<<"now stream is fail\n";if(!stream.good())std::cout<<"and stream is not good\n";}Output:
stream is not fail now stream is fail and stream is not good See also