C++ ficheros binarios y templates

22/05/2004 - 00:31 por opotonil | Informe spam
Hola.

Estaba intentando hacer una funcion en C++ que escribiera
en un fichero binario cualquier tipo de dato mediante
templates, pero no hay manera.

El codigo es el siguiente:

template <class T> void Fichero::f_escribir(string
nombre, T dato){
fichero.open(nombre.c_str(), ios::out |
ios::binary);
fichero.write(reinterpret_cast<const char*>
(&dato), sizeof(T));
fichero.close();
}

y el tipo de dato que le estoy pasando ahora mismo es:

struct grupos{
string nombre;
string comandos;
};

El fichero me lo crea pero vacio de 0 bytes.

ya de paso otra pregunta: la estructura puede estar
compuesta por datos de tipo string o no (ya que en el
string lo que imagino que haga sera crear un char
dinamico del tamaño necesario para alojar los datos de
manera que al leer del fichero con sizeof la estructura
cada vez tendra un tamaño).

Muchas gracias y salu2.

Preguntas similare

Leer las respuestas

#6 Isidro Muñoz
24/05/2004 - 21:50 | Informe spam
De nada,

Para eso estamos, ademas el bajo nivel me suele gustar mucho, sobre todo
como el compilador genera el código y almacena los datos en memoria,
etc.etc.

Vengo de C puro, no se puede evitar!!!

Saludos.
Isidro.
"eoliTH" <eoliTH@[No-Spam]terra.es> escribió en el mensaje
news:
Muchas gracias por la lección :) Me ha sido muy instructiva.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida