Namespaces
Variants

std:: basic_iostream

From cppreference.net
< cpp ‎ | io
Definido en el encabezado <istream>
template <

class CharT,
class Traits = std:: char_traits < CharT >
> class basic_iostream :
public basic_istream < CharT, Traits > ,

public basic_ostream < CharT, Traits >

La plantilla de clase basic_iostream proporciona soporte para operaciones de entrada/salida de alto nivel en flujos. Las operaciones soportadas incluyen lectura o escritura secuencial y formateo. Esta funcionalidad se implementa sobre la interfaz proporcionada por la clase std::basic_streambuf . Se accede a ella a través de la clase std::basic_ios .

cpp/io/ios base cpp/io/basic ios cpp/io/basic istream cpp/io/basic ostream std-basic iostream-inheritance.svg

Diagrama de herencia

Se proporcionan varios typedefs para tipos de caracteres comunes:

Definido en el encabezado <istream>
Tipo Definición
std::iostream std :: basic_iostream < char >
std::wiostream std :: basic_iostream < wchar_t >

Contenidos

Tipos de miembros

Tipo de miembro Definición
char_type CharT
traits_type Traits ; el programa está mal formado si Traits::char_type no es CharT .
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

Funciones miembro

construye el objeto
(función miembro pública)
[virtual]
destruye el objeto
(función miembro pública virtual)

Funciones miembro protegidas

(C++11)
asigna por movimiento otro basic_iostream
(función miembro protegida)
(C++11)
intercambia el estado con otro basic_iostream
(función miembro pública)

Heredado de std:: basic_istream

Funciones miembro

Entrada formateada
extrae datos formateados
(función miembro pública de std::basic_istream<CharT,Traits> )
Entrada no formateada
extrae caracteres
(función miembro pública de std::basic_istream<CharT,Traits> )
lee el siguiente carácter sin extraerlo
(función miembro pública de std::basic_istream<CharT,Traits> )
devuelve un carácter al flujo
(función miembro pública de std::basic_istream<CharT,Traits> )
coloca un carácter en el flujo de entrada
(función miembro pública de std::basic_istream<CharT,Traits> )
extrae caracteres hasta encontrar el carácter especificado
(función miembro pública de std::basic_istream<CharT,Traits> )
extrae y descarta caracteres hasta encontrar el carácter especificado
(función miembro pública de std::basic_istream<CharT,Traits> )
extrae bloques de caracteres
(función miembro pública de std::basic_istream<CharT,Traits> )
extrae bloques de caracteres ya disponibles
(función miembro pública de std::basic_istream<CharT,Traits> )
devuelve el número de caracteres extraídos en la última operación de entrada no formateada
(función miembro pública de std::basic_istream<CharT,Traits> )
Posicionamiento
devuelve el indicador de posición de entrada
(función miembro pública de std::basic_istream<CharT,Traits> )
establece el indicador de posición de entrada
(función miembro pública de std::basic_istream<CharT,Traits> )
Misceláneos
sincroniza con el dispositivo de almacenamiento subyacente
(función miembro pública de std::basic_istream<CharT,Traits> )

Clases miembro

implementa la lógica básica para preparar el flujo para operaciones de entrada
(clase miembro pública de std::basic_istream<CharT,Traits> )

Heredado de std:: basic_ostream

Funciones miembro

Salida formateada
inserta datos formateados
(función miembro pública de std::basic_ostream<CharT,Traits> )
Salida sin formato
inserta un carácter
(función miembro pública de std::basic_ostream<CharT,Traits> )
inserta bloques de caracteres
(función miembro pública de std::basic_ostream<CharT,Traits> )
Posicionamiento
devuelve el indicador de posición de salida
(función miembro pública de std::basic_ostream<CharT,Traits> )
establece el indicador de posición de salida
(función miembro pública de std::basic_ostream<CharT,Traits> )
Misceláneos
sincroniza con el dispositivo de almacenamiento subyacente
(función miembro pública de std::basic_ostream<CharT,Traits> )

Clases miembro

implementa la lógica básica para la preparación del flujo para operaciones de salida
(clase miembro pública de std::basic_ostream<CharT,Traits> )

Heredado de std:: basic_ios

Tipos de miembro

Tipo de miembro Definición
char_type CharT
traits_type Traits
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

Funciones miembro

Funciones de estado
verifica que no ha ocurrido ningún error, es decir, las operaciones de E/S están disponibles
(función miembro pública de std::basic_ios<CharT,Traits> )
verifica si se ha alcanzado el fin de archivo
(función miembro pública de std::basic_ios<CharT,Traits> )
verifica si ha ocurrido un error
(función miembro pública de std::basic_ios<CharT,Traits> )
verifica si ha ocurrido un error irrecuperable
(función miembro pública de std::basic_ios<CharT,Traits> )
verifica si ha ocurrido un error (sinónimo de fail() )
(función miembro pública de std::basic_ios<CharT,Traits> )
verifica que no ha ocurrido ningún error (sinónimo de ! fail() )
(función miembro pública de std::basic_ios<CharT,Traits> )
devuelve las banderas de estado
(función miembro pública de std::basic_ios<CharT,Traits> )
establece las banderas de estado
(función miembro pública de std::basic_ios<CharT,Traits> )
modifica las banderas de estado
(función miembro pública de std::basic_ios<CharT,Traits> )
Formato
copia información de formato
(función miembro pública de std::basic_ios<CharT,Traits> )
gestiona el carácter de relleno
(función miembro pública de std::basic_ios<CharT,Traits> )
Misceláneos
gestiona la máscara de excepciones
(función miembro pública de std::basic_ios<CharT,Traits> )
establece la configuración regional
(función miembro pública de std::basic_ios<CharT,Traits> )
gestiona el búfer de flujo asociado
(función miembro pública de std::basic_ios<CharT,Traits> )
gestiona el flujo vinculado
(función miembro pública de std::basic_ios<CharT,Traits> )
reduce caracteres
(función miembro pública de std::basic_ios<CharT,Traits> )
amplía caracteres
(función miembro pública de std::basic_ios<CharT,Traits> )

Heredado de std:: ios_base

Funciones miembro

Formato
gestiona indicadores de formato
(función miembro pública de std::ios_base )
establece indicador de formato específico
(función miembro pública de std::ios_base )
limpia indicador de formato específico
(función miembro pública de std::ios_base )
gestiona precisión decimal de operaciones de punto flotante
(función miembro pública de std::ios_base )
gestiona ancho de campo
(función miembro pública de std::ios_base )
Configuraciones regionales
establece configuración regional
(función miembro pública de std::ios_base )
devuelve configuración regional actual
(función miembro pública de std::ios_base )
Arreglo extensible interno
[static]
devuelve un entero único a nivel de programa seguro para usar como índice en pword() y iword()
(función miembro estática pública de std::ios_base )
redimensiona el almacenamiento privado si es necesario y accede al elemento long en el índice dado
(función miembro pública de std::ios_base )
redimensiona el almacenamiento privado si es necesario y accede al elemento void * en el índice dado
(función miembro pública de std::ios_base )
Misceláneos
registra función de callback de eventos
(función miembro pública de std::ios_base )
establece si las bibliotecas de E/S de C++ y C son interoperables
(función miembro estática pública de std::ios_base )
Clases miembro
excepción de flujo
(clase miembro pública de std::ios_base )
inicializa objetos de flujo estándar
(clase miembro pública de std::ios_base )

Tipos de miembros y constantes

Tipo Explicación
tipo de modo de apertura de flujo

También se definen las siguientes constantes:

Constante Explicación
app buscar al final del flujo antes de cada escritura
binary abrir en modo binario
in abrir para lectura
out abrir para escritura
trunc descartar el contenido del flujo al abrir
ate buscar al final del flujo inmediatamente después de abrir
noreplace (C++23) abrir en modo exclusivo

(typedef)
tipo de banderas de formato

También se definen las siguientes constantes:

Constante Explicación
dec usar base decimal para E/S de enteros: ver std::dec
oct usar base octal para E/S de enteros: ver std::oct
hex usar base hexadecimal para E/S de enteros: ver std::hex
basefield dec | oct | hex . Útil para operaciones de enmascaramiento
left ajuste a la izquierda (añade caracteres de relleno a la derecha): ver std::left
right ajuste a la derecha (añade caracteres de relleno a la izquierda): ver std::right
internal ajuste interno (añade caracteres de relleno al punto designado interno): ver std::internal
adjustfield left | right | internal . Útil para operaciones de enmascaramiento
scientific generar tipos de punto flotante usando notación científica, o notación hexadecimal si se combina con fixed : ver std::scientific
fixed generar tipos de punto flotante usando notación fija, o notación hexadecimal si se combina con scientific : ver std::fixed
floatfield scientific | fixed . Útil para operaciones de enmascaramiento
boolalpha insertar y extraer el tipo bool en formato alfanumérico: ver std::boolalpha
showbase generar un prefijo que indica la base numérica para salida de enteros, requiere el indicador monetario en E/S monetaria: ver std::showbase
showpoint generar un carácter de punto decimal incondicionalmente para salida de números de punto flotante: ver std::showpoint
showpos generar un carácter + para salida numérica no negativa: ver std::showpos
skipws omitir espacios en blanco iniciales antes de ciertas operaciones de entrada: ver std::skipws
unitbuf vaciar el buffer después de cada operación de salida: ver std::unitbuf
uppercase reemplazar ciertas letras minúsculas con sus equivalentes en mayúsculas en ciertas operaciones de salida: ver std::uppercase

(typedef)
tipo de estado del flujo

También se definen las siguientes constantes:

Constante Explicación
goodbit sin error
badbit error de flujo irrecuperable
failbit operación de entrada/salida fallida (error de formato o extracción)
eofbit la secuencia de entrada asociada ha alcanzado el fin de archivo

(typedef)
tipo de dirección de búsqueda

También se definen las siguientes constantes:

Constante Explicación
beg el inicio de un flujo
end el final de un flujo
cur la posición actual del indicador de posición del flujo

(typedef)
especifica el tipo de evento
(enum)
tipo de función de callback
(typedef)

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 271 C++98 los tipos miembro char_type , traits_type , int_type , pos_type y off_type no estaban definidos
( std::basic_istream y std::basic_ostream ambos definen estos tipos, resultando en ambigüedad)
definir
estos tipos

Véase también