Ввод/вывод вектора (vector) в файл/из файла
От: Psihadelic  
Дата: 03.06.10 13:29
Оценка:
Здравствуйте!

Столкнулся с проблемой, нужно вектор ввести в файл, а потом вывести оттуда.
Делаю я как написано в книге (блочный ввод/вывод), но там не для векторов, а для массива.

Записываю в файл:

    students _obj;
    init(_obj);
    MasSt.push_back(_obj);
    out.write((char*) &MasSt, sizeof(MasSt));
    out.close();


Извлекаю из файла
    in.read((char*) &MasSt, sizeof(MasSt)); // тут вектор не инициализируется, хотя по идее (по плану) должен
    for(int i = 0; i < MasSt.size(); ++i)
    {
        cout << MasSt[i].FirstName << endl << MasSt[i].kurs<< endl << MasSt[i].MisceProz << endl; // тут выводит ошибку: Unhandled exception //at 0x00c024d5 in lab2.4CPP.exe: 0xC0000005: Access violation reading location 0x696e6584.
    }


Синтаксической ошибки нет, но... я коментну строку с ошибкой.

Как сделать это правильно?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.