Выражение: xxx.write(reinterpret_cast<char*>(this),sizeof(*this)) я так понял, сохраняет адрес, а не поля объектов. То-есть мне интересно, есть ли какая-нибудь функция которой можно поместить и "забрать" поля.
Просто так намного удобнее находить определенную запись в файле.
Хранение полей объектов в файлах (Возможно ли?)
Модератор: Модераторы разделов
-
- Сообщения: 678
- Статус: #include <brain.h>
- ОС: Fedora 12
-
- Сообщения: 694
Re: Хранение полей объектов в файлах
-DooM- писал(а): ↑24.07.2007 12:52Выражение: xxx.write(reinterpret_cast<char*>(this),sizeof(*this)) я так понял, сохраняет адрес, а не поля объектов. То-есть мне интересно, есть ли какая-нибудь функция которой можно поместить и "забрать" поля.
Просто так намного удобнее находить определенную запись в файле.
Какой-то зверский метод.
А сериализацию - никак?
-
- Сообщения: 678
- Статус: #include <brain.h>
- ОС: Fedora 12
-
- Сообщения: 694
Re: Хранение полей объектов в файлах
Ну сделать так, чтобы сам класс умел сохранять своё состояние (т.е. значения полей) в поток. Ну и читать тоже.
Определить операторы >> и << для класса и сохранять/читать состояние объекта в/из файла (ну или точнее - в/из потока).
Как-то более плюсовое решение будет.
-
- Сообщения: 636
- ОС: Debian GNU/Linux