Namespaces
Variants

std::basic_istream<CharT,Traits>:: unget

From cppreference.net
basic_istream & unget ( ) ;

Hace que el carácter extraído más recientemente esté disponible nuevamente.

Primero, limpia eofbit . Luego, (desde C++11) unget se comporta como UnformattedInputFunction . Después de construir y verificar el objeto sentry, si alguna ios_base::iostate flags están establecidas, la función establece failbit y retorna. De lo contrario, llama a rdbuf ( ) - > sungetc ( ) .

Si rdbuf ( ) - > sungetc ( ) devuelve Traits :: eof ( ) , llama a setstate ( badbit ) .

En cualquier caso, establece el contador gcount() a cero.

Contenidos

Parámetros

(ninguno)

Valor de retorno

* this

Excepciones

failure if an error occurred (the error state flag is not goodbit ) and exceptions() is set to throw for that state.

Si una operación interna lanza una excepción, esta es capturada y badbit se establece. Si exceptions() está configurado para badbit , la excepción se relanza.

Ejemplo

#include <iostream>
#include <sstream>
int main()
{
    std::istringstream s1("Hello, world.");
    char c1 = s1.get();
    if (s1.unget())
    {
        char c2 = s1.get();
        std::cout << "Got: '" << c1 << "'. Got again: '" << c2 << "'.\n";
    }
}

Salida:

Got: 'H'. Got again: 'H'.

Véase también

mueve el puntero siguiente en la secuencia de entrada hacia atrás uno
(función miembro pública de std::basic_streambuf<CharT,Traits> )
extrae caracteres
(función miembro pública)
lee el siguiente carácter sin extraerlo
(función miembro pública)
coloca un carácter en el flujo de entrada
(función miembro pública)