Namespaces
Variants

std:: basic_ios

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

class CharT,
class Traits = std:: char_traits < CharT >
> class basic_ios

: public std:: ios_base

La clase std::basic_ios proporciona facilidades para interactuar con objetos que tienen std::basic_streambuf interface. Varios std::basic_ios objetos pueden referirse a un mismo objeto real std::basic_streambuf .

cpp/io/ios base std-basic ios-inheritance.svg

Diagrama de herencia

Se proporcionan varios typedefs para tipos de caracteres comunes:

Definido en el encabezado <ios>
Tipo Definición
std::ios std :: basic_ios < char >
std::wios std :: basic_ios < 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 públicas

construye el objeto
(función miembro pública)
[virtual]
destruye el objeto
(función miembro pública virtual)
operator=
el operador de asignación de copia está eliminado
(función miembro pública)
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)
verifica si se ha alcanzado el fin de archivo
(función miembro pública)
verifica si ha ocurrido un error
(función miembro pública)
verifica si ha ocurrido un error irrecuperable
(función miembro pública)
verifica si ha ocurrido un error (sinónimo de fail() )
(función miembro pública)
verifica que no ha ocurrido ningún error (sinónimo de ! fail() )
(función miembro pública)
devuelve las banderas de estado
(función miembro pública)
establece las banderas de estado
(función miembro pública)
modifica las banderas de estado
(función miembro pública)
Formato
copia información de formato
(función miembro pública)
gestiona el carácter de relleno
(función miembro pública)
Misceláneos
gestiona la máscara de excepciones
(función miembro pública)
establece la configuración regional
(función miembro pública)
gestiona el búfer de flujo asociado
(función miembro pública)
gestiona el flujo vinculado
(función miembro pública)
reduce caracteres
(función miembro pública)
amplía caracteres
(función miembro pública)

Funciones miembro protegidas

inicializa un objeto std::basic_ios construido por defecto
(función miembro protegida)
(C++11)
mueve desde otro std::basic_ios excepto por rdbuf
(función miembro protegida)
(C++11)
intercambia con otro std::basic_ios excepto por rdbuf
(función miembro protegida)
reemplaza el rdbuf sin limpiar su estado de error
(función miembro protegida)

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 en el 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)

Notas

Implementación directa de std::basic_ios almacena únicamente los siguientes miembros (los cuales dependen de los parámetros de plantilla y por lo tanto no pueden ser parte de std::ios_base ):

  • el carácter de relleno (ver fill() )
  • el puntero al stream vinculado (ver tie() )
  • el puntero al stream buffer asociado (ver rdbuf() ).

Las implementaciones reales varían:

Microsoft Visual Studio almacena solo esos tres miembros.

LLVM libc++ almacena 1 miembro menos: mantiene el puntero rdbuf como un miembro void * de ios_base .

GNU libstdc++ almacena 4 miembros adicionales: tres facetas en caché y un indicador para señalar que el relleno fue inicializado.