Librería C ++ IOS clara

Descripción

Se utiliza para establecer indicadores de estado de error. El valor actual de las banderas se sobrescribe: todos los bits se reemplazan por los del estado; Si el estado es goodbit (que es cero), se borran todas las banderas de error.

En el caso de que no haya un búfer de flujo asociado con el flujo cuando se llama a esta función, la bandera de bit malo se establece automáticamente (sin importar el valor de ese bit pasado en el estado de argumento).

Declaración

A continuación se muestra la declaración de la función ios :: clear.

void clear (iostate state = goodbit);

Parámetros

state - Un objeto de tipo ios_base :: iostate que puede tomar como valor cualquier combinación de las siguientes constantes de miembro de bandera de estado -

iostato valor

(constante miembro)

indica funciones para comprobar las banderas de estado
bueno() eof () fallar() malo() rdstate ()
buen bit Sin errores (valor cero iostato) true false false false buen bit
eofbit Fin de archivo alcanzado en la operación de entrada false true false false eofbit
fallo Error lógico en la operación de E / S false false true false fallo
badbit Error de lectura / escritura en la operación de E / S false false true true badbit

Valor devuelto

ninguna

Excepciones

Basic guarantee- si se lanza una excepción, el flujo está en un estado válido. Lanza una excepción de falla de tipo de miembro si la marca de estado de error resultante no es goodbit y las excepciones de miembro se establecieron para ese estado.

Razas de datos

Modifica el objeto de flujo.

El acceso simultáneo al mismo objeto de flujo puede provocar carreras de datos.

Ejemplo

En el siguiente ejemplo se explica la función ios :: clear.

#include <iostream>
#include <fstream>

int main () {
   char buffer [80];
   std::fstream myfile;

   myfile.open ("test.txt",std::fstream::in);

   myfile << "test";
   if (myfile.fail()) {
      std::cout << "Error writing to test.txt\n";
      myfile.clear();
   }

   myfile.getline (buffer,80);
   std::cout << buffer << " successfully read from file.\n";

   return 0;
}