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.
Leer las respuestas