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 >>
Здравствуйте, Tosha.
Слыхал о такой технике, как "сериализация". Тот самый случай.
Но vector не поддерживает эту технику. Значит надо либо сменить
контейнер, либо приложить руки. Допустим есть у DataBase метод
Serialize

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

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