Las operaciones de entrada y salida nunca formaron parte de C ni tampoco lo forman de C++. En ambos lenguajes, todas las operaciones de entrada y salida se hacen mediante librerías externas.
En el caso de C, esa librería es stdio, que agrupa todas las funciones de entrada y salida desde teclado, pantalla y ficheros de disco. En el caso de C++ se dispone de varias clases: streambuf, ios, istream, ostream y fstream.
Dejar fuera del lenguaje todas las operaciones de entrada y salida tiene varias ventajas:
Un stream es una abstracción para referirse a cualquier flujo de datos entre una fuente y un destinatario. Los streams se encargan de convertir cualquier tipo de objeto a texto legible por el usuario, y viceversa. Pero no se limitan a eso, también pueden hacer manipulaciones binarias de los objetos y cambiar la apariencia y el formato en que se muestra la salida.
C++ declara varias clases estándar para el manejo de streams:
Las clases base son streambuf e ios, las demás se derivan de estas dos.
La clase streambuf proporciona un interfaz entre la memoria y los dispositivos físicos.
La clase ios contiene además un puntero a un objeto de la clase streambuf. Proporciona soporte para entradas y salidas con validación y formato usando un streambuf.
© Noviembre de 2001 Salvador Pozo, salvador@conclase.net