std::basic_ios<CharT,Traits>::operator!
De cppreference.com
<tbody>
</tbody>
bool operator!() const; |
||
Devuelve true si ocurrió un error en el flujo asociado. Específicamente, devuelve true si badbit o failbit está establecido en rdstate().
Parámetros
(Ninguno)
Valor de retorno
true si ocurrió un error, false en caso contrario.
Ejemplo
Ejecuta este código
#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 |