void clear( std::ios_base::iostate state = std::ios_base::goodbit ); |
Sets the stream error state flags by assigning them the value of state
. By default, assigns std::ios_base::goodbit
which has the effect of clearing all error state flags.
If rdbuf()
is a null pointer (i.e. there is no associated stream buffer), then state | badbit
is assigned. May throw an exception.
state | - | new error state flags setting. It can be a combination of the following constants:
|
(none).
clear() without arguments can be used to unset the failbit after unexpected input.
#include <iostream> #include <string> int main() { double n; while( std::cout << "Please, enter a number\n" && ! (std::cin >> n) ) { std::cin.clear(); std::string line; std::getline(std::cin, line); std::cout << "I am sorry, but '" << line << "' is not a number\n"; } std::cout << "Thank you for entering the number " << n << '\n'; }
sets state flags (public member function) |
|
returns state flags (public member function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/io/basic_ios/clear