Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.29;
Скачать: CL | DM;

Вниз

Как правильно сделать копию структуры?   Найти похожие ветки 

 
gosha73   (2007-04-06 18:23) [0]

Привет друзья.
Раньше никогда не задавался таким вопросом, но сейчас возникла необходимость создавать копию структуры. Подскажите каким образом параметры одной структуры можно скопировать в те же самые параметры второй структуры. Я это делаю буквально приравнивая каждый параметр, может есть другой способ?


TMyRec = record
 Index: integer;
 sName: string;
 Value: Cardinal;
 ....
end;
...
var Rec1: TMyRec;
    Rec2: TMyRec;
..

Собственно вот если я заполнил параметрами Rec1, то как не мучаясь можно присвоить структуре Rec2 все параметры Rec1?
При этом Rec2 := Rec1, почему-то не хочет копировать их.


 
Loginov Dmitry ©   (2007-04-06 18:27) [1]

var Rec1, Rec2: TMyRec;


 
Loginov Dmitry ©   (2007-04-06 18:29) [2]

Хотя и так должно копироваться ...


 
gosha73   (2007-04-06 18:32) [3]

Так уже работает, спасибо.
А каким образом можно скопировать структуры при наличии только их указателей. К примеру:

TMyRec = record
Index: integer;
sName: string;
Value: Cardinal;
....
end;
pMyRec = ^TMyRec;

var Rec1, Rec2: pMyRec;
begin
 New(Rec1);
 New(Rec2);

...
end;


В данном случае уже нельзя будет присваивать параметры как в прошлый раз обычным Rec2 := Rec1, поскольку тут уже указатели, как в таком случае скопировать параметры?


 
Sapersky   (2007-04-06 18:35) [4]

Rec2^ := Rec1^;


 
gosha73   (2007-04-06 18:37) [5]

Хм, а ведь логично :) Спасибо.



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

Текущий архив: 2007.04.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
15-1175743774
iZEN
2007-04-05 07:29
2007.04.29
Квас Никола.


5-1152603818
Maxim-13
2006-07-11 11:43
2007.04.29
ПОМОГИТЕ НАЙТИ КОМПОНЕНТ!


1-1172899120
VitAngel
2007-03-03 08:18
2007.04.29
Вопрос по COM-объектам


2-1175706272
Igor_w
2007-04-04 21:04
2007.04.29
Нужно организовать телефонный справочник


3-1170763158
КоТ
2007-02-06 14:59
2007.04.29
Insert into и пустой параметр