Flujos de salida
Un objeto de flujo de salida es un destino de bytes. Las tres clases de flujo de salida más importantes son ostream
, ofstream
y ostringstream
.
La clase ostream
, mediante la clase derivada basic_ostream
, admite los objetos de secuencia predefinida:
cout
salida estándarcerr
error estándar con almacenamiento en búfer limitadoclog
similar acerr
pero con almacenamiento en búfer completo
Los objetos rara vez se construyen desde ostream
; normalmente se usan los objetos predefinidos. En algunos casos, puede volver a asignar objetos predefinidos después del inicio del programa. La clase ostream
, que puede configurarse para la operación de almacenamiento o no almacenamiento en búfer, se adapta mejor a la salida del modo de texto secuencial. Todas las funciones de la clase base, ios
, se incluyen en ostream
. Si construye un objeto de clase ostream
, debe especificar un objeto streambuf
al constructor.
La clase ofstream
admite la salida de archivo de disco. Si necesita un disco de solo salida, construya un objeto de clase ofstream
. Puede especificar si los objetos ofstream
aceptan datos de modo de texto o binarios al construir el objeto ofstream
o cuando llaman a la función miembro open
del objeto. Muchas opciones de formato y funciones de miembro se aplican a los objetos ofstream
, y todas las funciones de las clases base ios
y ostream
se incluyen.
Si especifica un nombre de archivo en el constructor, ese archivo se abre automáticamente cuando el objeto se construye. De otro modo, puede usar la función miembro open
después de invocar el constructor predeterminado.
Como la función en tiempo de ejecución sprintf_s
, la clase ostringstream
admite la salida a las cadenas en memoria. Para crear una cadena en memoria con el formato de secuencia de E/S, construya un objeto de clase ostringstream
.
En esta sección
Construir objetos de flujo de salida
Usar operadores de inserción y controlar el formato
Funciones de miembro de flujo de archivos de salida
Efectos del almacenamiento en búfer
Sobrecarga del operador << para las clases propias
Escribir manipuladores propios sin argumentos