[C con Clase] Problema de escritura y lectura multiple
Alberto
tuit.alberto.sinc en gmail.com
Lun Jul 6 11:06:29 CEST 2015
Buenas tardes.
De antemano, decir que uso DEV-c++ version 4.9.9.2
Llevo ya un tiempo peleandome con este problema, y al verdad ya no se por donde van los tiros. Primero les dejo el codigo y luego escribo la duda
Persona P("Alberto","Tuit","Jara",25),P2;
vector<Persona> v1(6);
vector<Persona> v2(6);
for (int i=0;i<v1.size();i++){
v1[i]=P;
}
ofstream fsalida("BBDDPersona.dat", ios::out | ios::binary);
for (int i=0;i<v1.size();i++){ fsalida.write(reinterpret_cast<char *>(&v1[i]),sizeof(v1[i]));
}
fsalida.close();
ifstream fentrada("BBDDPersona.dat", ios::in | ios::binary);
for (int i=0; i<v2.size();i++){
fentrada.read(reinterpret_cast<char *>(&v2[i]), sizeof(v2[i]));
}
for (int i=0; i<v2.size();i++){
cout << v2[i].GetNombre() << endl;
cout << v2[i].GetApellido1() << endl;
cout << v2[i].GetApellido2() << endl; cout <<v2[i].GetEdad(<<endl;
cout<<endl;
}
fentrada.close();
Teniendo la clase Persona 4 campos 3 string "nombre apellido1 y apellido2" y un int "Edad" y como funciones constructores setters y getters.
Bueno, el problema está en que el programa crashea despues de la lectura, no se si es por un fallo de liberación de memoria o porque.
Muchas gracias por su tiempo.
Alberto tuit
Más información sobre la lista de distribución Cconclase