Сохрание данных в файл?
От: Tosha Россия  
Дата: 25.12.03 13:57
Оценка:
typedef struct XZ
{
    ...
}znaniya;
//---------------------------------------------------------------------------
typedef struct XX
{
    ...
    vector<znaniya>p_znaniya;
}data;
//---------------------------------------------------------------------------
typedef struct XY
    {
        ...
        vector<data>data;
        //vector<znaniya>znaniya;
}Incaps;
//---------------------------------------------------------------------------
class DataBase
{
private:
        
        vector<Incaps>AllViews;//Инофрмация о всем проекте
public:

Как мне записать массив AllViews в бинарный файл, может кто-нибудь занимался чем-то подобным,
буду признателен если подскажите!
... << RSDN@Home 1.1.0 stable >>
Re: Сохрание данных в файл?
От: kiamor  
Дата: 25.12.03 14:17
Оценка: -1
Здравствуйте, Tosha.

Слыхал о такой технике, как "сериализация". Тот самый случай.
Но vector не поддерживает эту технику. Значит надо либо сменить
контейнер, либо приложить руки. Допустим есть у DataBase метод
Serialize . Вот в ём, при сохранении, перебираешь содержимое
AllViews и сохраняешь вместе с доп. инфой о количестве элементов
и пр. (метаданные). При загрузке соответственно — восстанавливаешь
это всё безобразие.

Но лучше всего, замени структуры на классы и объяви в каждом
Serialize . А в DataBase достаточно будет пробежать по элементам
AllViews и вызвать для каждого его Serialize.

Ессессно Serialize виртуальная функция и т.д. и т.п.
Re[2]: Сохрание данных в файл?
От: Tosha Россия  
Дата: 27.12.03 21:47
Оценка:
Здравствуйте, kiamor, Вы писали:

K>Здравствуйте, Tosha.


K>Слыхал о такой технике, как "сериализация". Тот самый случай.

K>Но vector не поддерживает эту технику. Значит надо либо сменить
K>контейнер, либо приложить руки. Допустим есть у DataBase метод
K>Serialize . Вот в ём, при сохранении, перебираешь содержимое
K>AllViews и сохраняешь вместе с доп. инфой о количестве элементов
K>и пр. (метаданные). При загрузке соответственно — восстанавливаешь
K>это всё безобразие.

K>Но лучше всего, замени структуры на классы и объяви в каждом

K>Serialize . А в DataBase достаточно будет пробежать по элементам
K>AllViews и вызвать для каждого его Serialize.

K>Ессессно Serialize виртуальная функция и т.д. и т.п.


Спасибо, буду разбираться!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.