Вниз
Скачать: CL | DM;

Сохранение объекта в файл.   Найти похожие ветки 

← →
mc_duck   (2003-11-06 20:28) [0]

Добрый день!
Есть ли среди вас грамотный человек,кто может решить такую задачу:
У меня есть:

TConDis=class
....
i:integer;
Owner:TconDis;
end;
....
var con1,con2:TconDis;
....

con2.Owner:=con1;
....
con2.Owner.i:=100;
....
Т.е. ссылаемся на один объект из другого по адресу.Эти два объекта
нужно сохранить в один файл ТАК,ЧТОБЫ СОХРАНИЛАСЬ СУЩЕСТВУЮЩАЯ ПРЯМАЯ СВЯЗЬ МЕЖДУ ОБЪЕКТАМИ.Как сделать это?
Спасибо.


← →
Mike_Goblin ©   (2003-11-06 21:17) [1]

наверное есть :)
сохранить полностью объект в Delphi нельзя
однако в Вашей задаче (судя по описанию) этого и не требуется.
Достаточно сохранить нужные Вам значения полей объектов.

PS Вторая стадия Delphi программиста: поиск Magic Component & Magiс Procedure. Ничего личного, все мы через это прошли.


← →
mc_duck   (2003-11-06 21:34) [2]

Суть в именно в том,что нужно сохранить прямой доступ,а не просто данные ,этого
требует структура программы(у многих объектов есть вложенные объекты,ссылки на объекты).У меня все объекты хранятся в TList.
Может резонно добавить поле в класс,которое будет хранить разницу
между началом списка и началом каждого объекта,в соответствии с которым будет можно будет восстанавливать связи?Если да,то как?


← →
Mike_Goblin ©   (2003-11-06 21:42) [3]

>Суть в именно в том,что нужно сохранить прямой доступ
а сейчас он кривой? Что вы понимаете под термином прямой доступ?
В Вашем примере вы создаете цепочку объектов, кто вам мешает, используя рекурсию сохранить данные цепочки всех объектов, а потом загружать?

PS или я чего-то не понял?


← →
mc_duck   (2003-11-06 21:43) [4]

Я привел упрощенную трактовку проблемы.


← →
mc_duck   (2003-11-06 22:02) [5]

У меня в TList есть объекты,которые при выполнении своего метода
обращаются по адресу к другому объекту,запуская у того
свой метод.


← →
esVer ©   (2003-11-06 22:32) [6]

Использовать принцип баз данных, где связь между таблицами устанавливается по некоему ключевому полю. Так и тут, писать это ключевое поле, и по нему восстанавливать связь между объектами во время загрузки.


← →
Ломброзо ©   (2003-11-06 22:42) [7]

существует XML


← →
mc_duck   (2003-11-07 09:31) [8]

XML-вещь относительно новая,до него ведь наверняка были способы
решить проблему эту.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-56735
Timon
2003-11-06 19:16
2003.11.17
Замена фраз в бинарном файле. Помогите


3-56445
ANT0
2003-10-29 16:20
2003.11.17
IB 6.5


1-56634
Maverico
2003-11-07 20:51
2003.11.17
Размер файла


3-56461
GIL
2003-10-29 10:16
2003.11.17
Инициализация бд


14-56882
MPS
2003-10-26 04:35
2003.11.17
Borland C++ НЕ Устанавливается на WinXP




   Наверх