[ Web Proxy ]
URL:
Viewing: http://es.cppreference.com/cpp/named_req/FormattedInputFunction [Back]  [Original]

Requisitos denominados de C++: FormattedInputFunction - cppreference.com
cppreference.com
Espacios de nombres
Variantes

Requisitos denominados de C++: FormattedInputFunction

De cppreference.com
 
 
Requisitos denominados de C++
Nmeros aleatorios
Concurrencia
(C++11)
(C++11)
Rangos
Vista multidimensional
Otros

 

Requisitos

Una FormattedInputFunction es una funcin de flujo de entrada que realiza lo siguiente:

  • Construye un objeto de tipo basic_istream::sentry con duracin de almacenamiento automtica y con el argumento noskipws establecido a false, que realiza los siguiente:
  • si eofbit o badbit estn establecidos en el flujo de entrada, tambin se establece failbit, y, si las excepciones failbit estn habilitadas en la mscara de excepciones de este flujo de entrada ((exceptions() & failbit) != 0), lanza la excepcin ios_base::failure.
  • vaca el flujo de salida ligado por tie(), si corresponde.
  • si el indicador ios_base::skipws est establecido en el flujo de entrada, extrae y descarta caracteres del flujo de entrada hasta que una de las condiciones siguientes sea verdadera:
  • el siguiente carcter disponible en el flujo de entrada no es un carcter de espacio en blanco, como se prueba mediante la faceta std::ctype de la configuracin regional actualmente imbuida en este flujo de entrada. El carcter que no es un espacio en blanco no se extrae.
  • se alcanza el final del flujo, en cuyo caso se establecen failbit y eofbit y, si el flujo est activado por excepciones de uno de esos bits, se lanza la excepcin ios_base::failure.
  • Comprueba el estado del centinela llamando a sentry::operator bool(), que es equivalente a basic_ios::good.
  • Si el centinela devolvi false o el constructor lanz una excepcin, no se realiza ninguna entrada.
  • Si el centinela devolvi true, se realiza la entrada como con una llamada a rdbuf()->sbumpc() o rdbuf()->sgetc().
  • si se alcanza el final del flujo (la llamada a rdbuf()->sbumpc() o rdbuf()->sgetc() devuelve Traits::eof()), estabelce eofbit. Si la excepcin eofbit est habilitada en la mscara de excepciones de este flujo ((exceptions() & eofbit) != 0), se lanza la excepcin ios_base::failure.
  • si se lanza una excepcin durante la entrada, se establece badbit en el flujo de entrada. Si las excepciones badbit estn habilitadas en la mscara de excepciones de este flujo ((exceptions() & badbit) != 0), tambin se vuelve a lanzar la excpecin.
  • Si no se lanza ninguna excepcin, devuelve *this.
  • En cualquier caso, se termine por excepcin o retornando, se llama al destructor del centinela antes de salir de esta funcin.

Biblioteca estndar

Las siguientes funciones de la biblioteca estndar son FormattedInputFunction.

Informes de defectos

Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estndares de C++ publicados anteriormente.

ID Aplicado a Comportamiento segn lo publicado Comportamiento correcto
LWG 160 C++98 El proceso de determinar si la excepcin capturada se
vuelve a lanzar menciona una funcin inexistente, exception().
Se corrigi a exceptions().

Web Proxy Viewer  |  New URL  |  Original Page