Namespaces
Variants

std::basic_ios<CharT,Traits>:: operator!

From cppreference.net
bool operator ! ( ) const ;

Devuelve true si ha ocurrido un error en el flujo asociado. Específicamente, devuelve true si badbit o failbit están establecidos en rdstate ( ) .

Contenidos

Parámetros

(ninguno)

Valor de retorno

true si ha ocurrido un error, false en caso contrario.

Ejemplo

#include <cstdlib>
#include <fstream>
#include <iostream>
int main()
{
    std::ifstream file("test.txt");
    if (!file) // operator! is used here
    {  
        std::cout << "File opening failed\n";
        return EXIT_FAILURE;
    }
    // typical C++ I/O loop uses the return value of the I/O function
    // as the loop controlling condition, operator bool() is used here
    for (int n; file >> n;)
       std::cout << n << ' ';
    std::cout << '\n';
    if (file.bad())
        std::cout << "I/O error while reading\n";
    else if (file.eof())
        std::cout << "End of file reached successfully\n";
    else if (file.fail())
        std::cout << "Non-integer data encountered\n";
}

Véase también

La siguiente tabla muestra el valor de basic_ios accesores ( good() , fail() , etc.) para todas las combinaciones posibles de ios_base::iostate flags:

ios_base::iostate indicadores basic_ios accesores
eofbit failbit badbit good() fail() bad() eof() operator bool operator!
falso falso falso verdadero falso falso falso verdadero falso
falso falso verdadero falso verdadero verdadero falso falso verdadero
falso verdadero falso falso verdadero falso falso falso verdadero
falso verdadero verdadero falso verdadero verdadero falso falso verdadero
verdadero falso falso falso falso falso verdadero verdadero falso
verdadero falso verdadero falso verdadero verdadero verdadero falso verdadero
verdadero verdadero falso falso verdadero falso verdadero falso verdadero
verdadero verdadero verdadero falso verdadero verdadero verdadero falso verdadero