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

Как скопировать экземпляр объекта   Найти похожие ветки 

 
ghg ©   (2003-04-19 12:34) [0]

Вопрос конечно глупый, но все-таки.
Есть два экземпляра какого-либо объекта, нужно все поля одного скопировать в другой экземляр, но именно скопировать, а не сделать так чтобы они указывали на обдну область памяти.

Можно конечно все сделать ручками, но наверняка есть способ быстрее. Может кто его подскажет?

С наилучшими ...


 
Radionov Alexey ©   (2003-04-19 12:46) [1]

Обычно этим занимается метод Assign. В своих же разработках (когда требуется помимо всего прочего скопировать что-то свое) его следует переопределять.


 
Юрий Зотов ©   (2003-04-19 12:53) [2]

Если речь идет именно о полях, то просто CopyMemory. Но если среди этих полей будут указатели, то именно они и скопируются, а не то, на что они указывают. Для того и нужен Assign.


 
ghg ©   (2003-04-19 13:14) [3]

Для начала скажу, что объект это наследник TObject, соответственно assign он не имеет.
некоторые из полей являются динамическими массивами других объектов.

Соответственно для копирования объекта, придется все-таки все делать ручками. Правильно ли я понял?



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

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



Память: 0.45 MB
Время: 0.008 c
1-527
DeMoN-777
2003-04-20 14:23
2003.05.01
Эффект


14-764
Михайлов Антон
2003-04-13 19:33
2003.05.01
MainMenu


1-514
shodan
2003-04-20 15:45
2003.05.01
Hint


7-816
SB
2003-03-11 15:37
2003.05.01
Падает print диалог в Windows XP


3-379
vil
2003-04-14 13:24
2003.05.01
ADOQuery




   Наверх