Namespaces
Variants

Standard library header <iostream>

From cppreference.net
Standard library headers

Este encabezado es parte de la biblioteca de Entrada/salida .

Incluir <iostream> se comporta como si definiera un objeto de duración de almacenamiento estático de tipo std::ios_base::Init , cuyo constructor inicializa los objetos de flujo estándar si es el primer std::ios_base::Init en ser construido, y cuyo destructor vacía esos objetos (excepto cin y wcin ) si es el último std::ios_base::Init en ser destruido.

Contenidos

Incluye

(C++11)
std::ios_base clase, std::basic_ios plantilla de clase y typedefs
std::basic_streambuf plantilla de clase
(C++11)
std::basic_istream plantilla de clase y typedefs
(C++11)
std::basic_ostream , std::basic_iostream plantillas de clase y typedefs

Objetos

lee del flujo de entrada estándar de C stdin
(objeto global)
escribe al flujo de salida estándar de C stdout
(objeto global)
escribe al flujo de error estándar de C stderr , sin búfer
(objeto global)
escribe al flujo de error estándar de C stderr
(objeto global)

Sinopsis

#include <ios>
#include <streambuf>
#include <istream>
#include <ostream>
namespace std {
  extern istream cin;
  extern ostream cout;
  extern ostream cerr;
  extern ostream clog;
  extern wistream wcin;
  extern wostream wcout;
  extern wostream wcerr;
  extern wostream wclog;
}

Informes de defectos

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

DR Se aplica a Comportamiento publicado Comportamiento correcto
LWG 155 C++98 el tipo del objeto estático era std::basic_ios::Init
(no estrictamente incorrecto, pero la redacción era engañosa)
corregido a std::ios_base::Init
LWG 1123 C++98 incluir <iostream> no garantizaba la
construcción de objetos std::ios_base::Init
garantiza