std::basic_ios<CharT,Traits>::bad - cppreference.com
De cppreference.com
Devuelve true si se ha producido un error no recuperable en el flujo asociado. En concreto, devuelve true si se ha establecido badbit en rdstate().
Véase ios_base::iostate para ver la lista de condiciones que establecen badbit.
Parámetros
(Ninguno)
Valor de retorno
true si se ha producido un error no recuperable, false en caso contrario.
Ejemplo
#include <cstdlib> #include <fstream> #include <iostream> int main() { std::ifstream file("test.txt"); if (!file) // aquí se usa operator! { std::cout << "Error al abrir el archivo\n"; return EXIT_FAILURE; } // Un bucle de E/S típico de C++ utiliza el valor de retorno de la función // de E/S como la condición de control del bucle, aquí se usa operator bool() for (int n; file >> n;) std::cout << n << ' '; std::cout << '\n'; if (file.bad()) std::cout << "Error de E/S durante la lectura\n"; else if (file.eof()) std::cout << "Se alcanzó el fin de archivo con éxito\n"; else if (file.fail()) std::cout << "Se encontraron datos no enteros\n"; }
Véase también
| ios_base::iostate flags | basic_ios accessors | |||||||
| eofbit | failbit | badbit | good() | fail() | bad() | eof() | operator bool() | operator!() |
| false | false | false | true | false | false | false | true | false |
| false | false | true | false | true | true | false | false | true |
| false | true | false | false | true | false | false | false | true |
| false | true | true | false | true | true | false | false | true |
| true | false | false | false | false | false | true | true | false |
| true | false | true | false | true | true | true | false | true |
| true | true | false | false | true | false | true | false | true |
| true | true | true | false | true | true | true | false | true |