Estructuras con vectores y fstream

Iniciado por user-marcos, 19 Marzo 2015, 10:10 AM

0 Miembros y 1 Visitante están viendo este tema.

user-marcos

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 (cpp) [Seleccionar]

typedef struct
  int edad;
  double peso;
  char letra;
}Estr;

typedef struct{
  vector <Estr> est;
  int num;
  bool verdad[10];
}Estructura;

const char NOMBRE[] = "save.dat";

void Save();
void Load();

int main()
{
  return 0;
}

void Load()
{
  Estructura est;
  ifstream f;
  f.open(NOMBRE, ios::in|ios::out|ios::binary);
  ...
  while(f.read((char *)&est,sizeof(est)));
}

void save ()
{
   Estructura est;
   ofstream f;
   ofstream f(NOMBRE,ios::in|ios::out|ios::binary);
   f.write((const char *) &s,sizeof(est));
}