Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: user-marcos en 19 Marzo 2015, 10:10 am



Título: Estructuras con vectores y fstream
Publicado por: user-marcos en 19 Marzo 2015, 10:10 am
Estoy haciendo un programa en el que tiene que guardar y cargar los valores en un archivo binario la forma "normal" f.write((const char *) &s,sizeof(est)); no me funciona porque al utilizar vectores e intentar cargar me desborda he probado mil cosas, pero no se me ocurre nada más, haber si alguien es capaz de encontrar una solución.
Un saludo.

Código
  1. typedef struct
  2.  int edad;
  3.  double peso;
  4.  char letra;
  5. }Estr;
  6.  
  7. typedef struct{
  8.  vector <Estr> est;
  9.  int num;
  10.  bool verdad[10];
  11. }Estructura;
  12.  
  13. const char NOMBRE[] = "save.dat";
  14.  
  15. void Save();
  16. void Load();
  17.  
  18. int main()
  19. {
  20.  return 0;
  21. }
  22.  
  23. void Load()
  24. {
  25.  Estructura est;
  26.  ifstream f;
  27.  f.open(NOMBRE, ios::in|ios::out|ios::binary);
  28.  ...
  29.  while(f.read((char *)&est,sizeof(est)));
  30. }
  31.  
  32. void save ()
  33. {
  34.   Estructura est;
  35.   ofstream f;
  36.   ofstream f(NOMBRE,ios::in|ios::out|ios::binary);
  37.   f.write((const char *) &s,sizeof(est));
  38. }
  39.