Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Тип TRecord и его копирование...


Страницы:   1 2

fly_mer ©   (2006-09-07 13:19:00) 

Здравствуйте, ув. жители!

Подскажите пожалуйста, каким образом можно перегнать данные из одной TRecord в другую если в другой есть те же (но НЕ ВСЕ) поля?

Например:

type x1=record
 n1: string;
 n2: string;
 n3: integer;
end;
type x2=record
 n1: string;
 n3: record; // <- тут n2 не используется - для укомпакчивания данных
end;

Вот.:) помогите, пожалуйста?


Barloggg   (2006-09-07 13:41:00) [21]

если есть несовпадение, то только по одному полю за раз.
более того нельзя сделать а:=в даже в том случае если поля одинаковы, но типы разные (всмысле объявлены как независимые типы данных). компилятор ругается.

лично я для таких случаев использую фишку "OVERLOAD".
то есть у меня есть стопка процедур
procedure copy(one:typeA;two:typeB);overload;
и всего делов. для каждой комбинации типов запустится своя собственная процедура.
что вроде старого бейсиковского оператора Let.


lessard   (2006-09-07 13:38:00) [22]

balera, нифига. если не совпадают некоторые поля типа l: (v1, v2, v3), то ничего не скопируется, уже пробовал...

n3: string
записался просто.


balepa   (2006-09-07 13:27:00) [23]

X1.N1:= x2.n1
....
x1.Ni:= x2.Ni


Elen   (2006-09-07 13:22:00) [24]


> n3: record

Что еще за record ?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо