Biblioteca C ++ IOS - bueno
Descripción
Se utiliza para comprobar si el estado del flujo es bueno.
Declaración
A continuación se muestra la declaración de la función ios :: good ().
bool good() const;
Parámetros
ninguna
Valor devuelto
Verdadero si no se establece ninguno de los indicadores de estado de la transmisión.
Falso si se establece alguno de los indicadores de estado de la transmisión (badbit, eofbit o failbit).
Excepciones
Strong guarantee - si se lanza una excepción, no hay cambios en la secuencia.
Razas de datos
Accede al objeto de flujo.
El acceso simultáneo al mismo objeto de flujo puede provocar carreras de datos.
Ejemplo
En el siguiente ejemplo se explica acerca de ios :: good ().
#include <iostream>
#include <sstream>
void print_state (const std::ios& stream) {
std::cout << " good()=" << stream.good();
std::cout << " eof()=" << stream.eof();
std::cout << " fail()=" << stream.fail();
std::cout << " bad()=" << stream.bad();
}
int main () {
std::stringstream stream;
stream.clear (stream.goodbit);
std::cout << "goodbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.eofbit);
std::cout << " eofbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.failbit);
std::cout << "failbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.badbit);
std::cout << " badbit:"; print_state(stream); std::cout << '\n';
return 0;
}
Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:
goodbit: good()=1 eof()=0 fail()=0 bad()=0
eofbit: good()=0 eof()=1 fail()=0 bad()=0
failbit: good()=0 eof()=0 fail()=1 bad()=0
badbit: good()=0 eof()=0 fail()=1 bad()=1