Curso de C++ v2.0
Consultas, lista de correo 'C++ Con Clase' 'C++ Con Clase' página de entrada Librerías estándar C Tabla de contenido Contactar con Webmaster
*Introducción
*1 Toma de contacto
*2 Variables I
*3 Funciones I: Declaración y definición
*4 Operadores I
*5 Sentencias
*6 Declaración de variables
*7 Normas para la notación
*8 Cadenas de caracteres
*9 Conversión de tipos
*10 Variables II: Arrays
*11 Variables III: Estructuras
*12 Variables IV: Punteros 1
*13 Operadores II: Más operadores
*14 Operadores III: Precedencia
*15 Funciones II: Parámetros por valor y referencia
*16 Variables V: Uniones
*17 Variables VI: Punteros 2
*18 Operadores IV: De bits y condicional
*19 Definición de tipos
*20 Funciones III
*21 Funciones IV: Sobrecarga
*22 Operadores V: Sobrecarga
*23 El preprocesador
*24 Funciones V: Recursividad
*25 Variables VII: Modificadores
*26 Espacios con nombre
*27 Clases I: Definiciones
*28 Declaración de clases
*29 Constructores
*30 Destructores
*31 El puntero this
*32 Sistema de protección
*33 Modificadores para miembros
*34 Más sobre funciones
*35 Operadores sobrecargados
*36 Herencia
*37 Funciones virtuales
*38 Derivación múltiple
*39 Trabajar con ficheros
*40 Plantillas
*41 Punteros a miembros
*42 Castings
*43 Excepciones
*Ejemplos capítulos 1 a 6
*Ejemplos capítulos 8 y 9
*A Palabras reservadas C/C++
*B Trigrafos y símbolos alternativos
*C Librerías estándar
*D Streams
 . Clases predefinidas
 . streambuf
 . ios
 . filebuf
 . istream
 . ostream
 . iostream
 . fstreambase
 . ifstream
 . ofstream
 . fstream
 . strstreambuf
 . strstreambase
 . istrstream
 . ostrfstream
 . strstream
 . Objetos predefinidos
 . Objeto cout
 . Objeto cin
<< < >

Clase fstreambase  

La declaración de esta clase está en el fichero fstream.

Esta clase proporciona acceso a funciones de filebuf inaccesibles a través de ios::bp tanto para fstreambase como para sus clases derivadas.

La una función miembro de filebuf no en un miembro virtual de la clase base filebuf (streambuf), ésta no será accesible. Por ejemplo: attach, open y close no lo son.

Los constructores de fstreambase inicializan el dato ios::bp para que apunte al filebuf.

Constructores:

fstreambase();
fstreambase(const char *name, 
   int mode, int = filebuf::openprot); 
fstreambase(int fd); 
fstreambase(int fd, char *buf, int len);

La primera forma crea un fstreambase que no está asociando a ningún fichero.

La segunda forma crea un fstreambase, abre el fichero especificado por name en el modo especificado por mode y lo conecta a ese fichero.

La tercera forma crea un fstreambase y lo conecta a un descriptor de fichero abierto y especificado por fd.

La cuarta forma crea un fstreambase y lo conecta a un descriptor de fichero abierto especificado por fd y usando un buffer especificado por buf con el tamaño indicado por len.

Función attach:

void attach(int); 

Conecta con un descriptor de fichero abierto.

Función close:

void close();

Cierra el filebuf y el fichero asociados.

Función open:

void open(const char *name, int mode,
   int prot=filebuf::openprot);

Abre un fichero para el objeto especificado.

Para el parámetro mode se pueden usar los valores del enum open_mode definidos en la clase ios.

Clase
Parámetro mode
fstream ios::in
ofstream ios::out

El parámetro prot se corresponde con el permiso de acceso DOS, y se usa salvo que se use el valor ios::nocreate para el parámetro mode. Por defecto se usa el valor de permiso de lectura y escritura.

Función rdbuf:

filebuf* rdbuf();

Devuelve el buffer usado.

Función setbuf:

void setbuf(char*, int);

Asigna un buffer especificado por el usuario al filebuf.

Clase ifstream  

La declaración de esta clase está en el fichero fstream.h.

Proporciona un stream de entrada para leer desde un fichero usando un filebuf.

Constructores:

ifstream();
ifstream(const char *name, int mode = ios::in, 
   int = filebuf::openprot);
ifstream(int fd);
ifstream(int fd, char *buf, int buf_len);

La primera forma crea un ifstream que no está asociando a ningún fichero.

La segunda forma crea un ifstream, abre un fichero de entrada en modo protegido y se conecta a él. El contenido del fichero, si existe, se conserva; los nuevos datos escritos se añaden al final. Por defecto, el fichero no se crea si no existe.

La tercera forma crea un ifstream, y lo conecta a un descriptor de un fichero fd abierto previamente.

La cuarta forma crea un ifstream conectado a un fichero abierto especificado mediante su descriptor, fd. El ifstream usa el buffer especificado por buf de longitud buf_len.

Función open:

void open(const char *name, int mode,
   int prot=filebuf::openprot);

Abre un fichero para el objeto especificado.

Para el parámetro mode se pueden usar los valores del enum open_mode definidos en la clase ios.

Clase
Parámetro mode
fstream ios::in
ofstream ios::out

El parámetro prot se corresponde con el permiso de acceso DOS, y se usa salvo que se use el valor ios::nocreate para el parámetro mode. Por defecto se usa el valor de permiso de lectura y escritura.

Función rdbuf:

filebuf* rdbuf();

Devuelve el buffer usado.

Clase ofstream  

La declaración de esta clase está en el fichero fstream.

Proporciona un stream de salida para escribir a un fichero usando un filebuf.

Constructores:

ofstream();
ofstream(const char *name, int mode = ios::out, 
   int = filebuf::openprot);
ofstream(int fd);
ofstream(int fd, char *buf, int buf_len);

La primera forma crea un ofstream que no está asociando a ningún fichero.

La segunda forma crea un ofstream, abre un fichero de salida y se conecta a él.

La tercera forma crea un ofstream, y lo conecta a un descriptor de un fichero fd abierto previamente.

La cuarta forma crea un ofstream conectado a un fichero abierto especificado mediante su descriptor, fd. El ofstream usa el buffer especificado por buf de longitud buf_len.

Función open:

void open(const char *name, int mode,
  int prot=filebuf::openprot);

Abre un fichero para el objeto especificado.

Para el parámetro mode se pueden usar los valores del enum open_mode definidos en la clase ios.

Clase
Parámetro mode
fstream ios::in
ofstream ios::out

El parámetro prot se corresponde con el permiso de acceso DOS, y se usa salvo que se use el valor ios::nocreate para el parámetro mode. Por defecto se usa el valor de permiso de lectura y escritura.

Función rdbuf:

filebuf* rdbuf();

Devuelve el buffer usado.

Clase fstream  

La declaración de esta clase está en el fichero fstream.h.

Proporciona un stream de salida y salida a un fichero usando un filebuf.

La entrada y la salida se inicializan usando las funciones de las clases base istream y ostream. Por ejemplo, fstream puede usar la función istream::getline() para extraer caracteres desde un fichero.

Constructores:

fstream();
fstream(const char *name, int mode = ios::in, 
   int = filebuf::openprot);
fstream(int fd);
fstream(int fd, char *buf, int buf_len);

La primera forma crea un fstream que no está asociando a ningún fichero.

La segunda forma crea un fstream, abre un fichero con el acceso especificado por mode y se conecta a él.

La tercera forma crea un fstream, y lo conecta a un descriptor de un fichero fd abierto previamente.

La cuarta forma crea un fstream conectado a un fichero abierto especificado mediante su descriptor, fd. El fstream usa el buffer especificado por buf de longitud buf_len. Si buf es NULL o n no es positivo, el fstream será sin buffer.

Función open:

void open(const char *name, int mode,
   int prot=filebuf::openprot);

Abre un fichero para el objeto especificado.

Para el parámetro mode se pueden usar los valores del enum open_mode definidos en la clase ios.

Clase
Parámetro mode
fstream ios::in
ofstream ios::out

El parámetro prot se corresponde con el permiso de acceso DOS, y se usa salvo que se use el valor ios::nocreate para el parámetro mode. Por defecto se usa el valor de permiso de lectura y escritura.

Función rdbuf:

filebuf* rdbuf();

Devuelve el buffer usado.

Clase strstreambuf  

La declaración de esta clase está en el fichero strstrea.h.

Clase base para especializar la clase ios para el manejo de streams de cadenas, esto se consigue inicializando ios::bp de modo que apunte a un objeto strstreambuf. Esto proporciona las comprobaciones necesarias para cualquier operación de entrada y salida de cadenas en memoria. Por ese motivo, la clase strstreambase está protegida y sólo es accesible para clases derivadas que realicen entradas y salidas.

Constructores:

strstreambase();
strstreambase(const char*, int, char *start);

La primera forma crea un strstreambase con el buffer de su dato streambuf en memoria dinámica reservada la primera vez que se usa. Las zonas de lectura y escritura son la misma.

La segunda forma crea un strstreambase con el buffer y la posición de comienzo especificados.

Función rdbuf:

strstreambuf * rdbuf();

Devuelve un puntero a strstreambuf asociado con este objeto.

Clase strstreambase  

La declaración de esta clase está en el fichero strstrea.h.

Especialización de la clase ios para streams de cadena inicializando ios::bp para que apunte a un strstreambuf. Esto proporciona la condición necesaria para cualquier operación de entrada/salida en memoria. Por esa razón, strstreambase está diseñada completamente protegida y accesible sólo para clases derivadas que realicen entradas y salidas. Hace uso virtual de la clase ios.

Constructores:

strstreambase();
strstreambase(const char*, int, char *start);

La primera forma crea un strstreambase con el buffer de streambuf creado dinámicamente la primera vez que se usa. Las áreas de lectura y escritura son la misma.

La segunda forma crea un strstreambase con el buffer especificado y al posición de comienzo start.

Función rdbuf:

strstreambuf* rdbuf();

Devuelve un puntero al strstreambuf asociado con este objeto.

Clase istrstream  

La declaración de esta clase está en el fichero strstrea.

Proporciona las operaciones de entrada en un strstreambuf.

El bloque formado por ios, istream, ostream, iostream y streambuf, proporciona una base para especializar clases que trabajen con memoria.

Constructores:

istrstream(char *);
istrstream(char *str, int n);

La primera forma crea un istrstream con la cadena especificada (el carácter nulo nunca se extrae).

La segunda forma crea un istrstream usando n bytes para str.

Clase ostrfstream  

La declaración de esta clase está en el fichero strstrea.h.

Proporciona un stream de salida para inserción desde un array usando un strstreambuf.

Constructores:

ostrstream();
ostrstream(char *buf, int len, int mode = ios::out);

La primera forma crea un ostrstream con un array dinámico como stream de entrada.

La segunda forma crea un ostrstream con un buffer especificado por buf y un tamaño especificado por len. Si mode es ios::app o ios::ate, los punteros de lectura/escritura se colocan en la posición del carácter nulo de la cadena.

Función pcount:

int pcount();

Devuelve el número de caracteres actualmente almacenados en el buffer.

Función str:

char *str();

Devuelve y bloquea el buffer. El usuario debe liberar el buffer si es dinámico.

Clase strstream  

La declaración de esta clase está en el fichero strstrea.h.

Proporciona entrada y salida simultanea en un array usando un strstreambuf. La entrada y la salida son realizadas usando las funciones de las clases base istream y ostream.

Por ejemplo, strstream puede usar la función istream::getline() para extraer caracteres desde un buffer.

Constructores:

strstream();
strstream(char*, int sz, int mode);

La primera forma crea un strstream con el buffer del dato miembro strambuf de la clase base strstreambase creado dinámicamente la primera vez que se usa. Las áreas de entrada y salida son la misma.

La segunda forma crea un strstream con un buffer del tamaño especificado. Si el parámetro mode es ios::app o ios::ate, el puntero de entrada/salida se coloca en el carácter nulo que indica el final de la cadena.

Función str:

char *str();

Devuelve y bloquea el buffer. El usuario debe liberar el buffer si es dinámico.

<< < >