Biblioteca C ++ IOS - rdstate

Descrição

É usado para verificar a obtenção de sinalizadores de estado de erro. Os sinalizadores de estado de erro interno são definidos automaticamente por chamadas para funções de entrada / saída no fluxo para sinalizar certos erros.

Declaração

A seguir está a declaração para a função ios :: rdstate.

iostate rdstate() const;

Parâmetros

Nenhum

Valor de retorno

Um objeto do tipo ios_base :: iostate que pode conter qualquer combinação das seguintes constantes de membro da bandeira de estado -

iostate valor

(constante de membro)

indica funções para verificar sinalizadores de estado
Boa() eof () falhou() ruim() rdstate ()
goodbit Sem erros (valor zero iostate) true false false false goodbit
eofbit Fim do arquivo alcançado na operação de entrada false true false false eofbit
failbit Erro lógico na operação i / o false false true false failbit
badbit Erro de leitura / gravação na operação i / o false false true true badbit

Exceções

Strong guarantee - se uma exceção é lançada, não há mudanças no fluxo.

Data Races

Acessa o objeto de fluxo.

O acesso simultâneo ao mesmo objeto de fluxo pode causar disputas de dados.

Exemplo

No exemplo abaixo é mostrado para ios :: rdstate.

#include <iostream>     
#include <fstream>      

int main () {
   std::ifstream is;
   is.open ("test.txt");
   if ( (is.rdstate() & std::ifstream::failbit ) != 0 )
      std::cerr << "Error opening 'test.txt'\n";
   return 0;
}