![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Доброго времени суток!
Вопрос: можно ли как-нибудь скопировать данные из переменной типа Record в переменную такого же типа, чтобы не копировать все поля по отдельности? Есть ли какие-нибудь быстрые методы копирования? А то не хочется мне копировать более 40 полей... Заранее спасибо! |
|
#2
|
||||
|
||||
|
TPrimer=record
v1:integer; v2:string; .......... v100:variant; end; .......................................... p1,p2:TPrimer вот собственно копирование p1:=p2 Последний раз редактировалось Pilot_Red, 05.02.2011 в 22:09. |
|
#3
|
||||
|
||||
|
|
|
#4
|
||||
|
||||
|
Цитата:
А данный пример копирует содержимое или адрес это переменной??? Мне надо именно содержимое. |
|
#5
|
||||
|
||||
|
Содержимое!
Это обычная переменная(подумаешь тип рекорд) и как с обычной переменной делаешь обычное присваивание |
|
#6
|
||||
|
||||
|
Спасибо! Вот у меня еще вопрос:
Код:
type
TUserData = record
UserName: String;
ID: Integer;
{ ... }
end;
TQueryData = record
Primary: Cardinal;
{ ... }
end;
TQueryRecord = record
{ ... }
UserData: TUserData;
QueryData: TQueryData;
end;
{ .......................... }
procedure Set;
var
A: TQueryRecord;
begin
A.<переменная> := ''; // <- Это проходит
A.UserData.<переменная> := ''; // <- Вот здесь выскакивает ошибка "[DCC Error] E2064 Left side cannot be assigned to"
A.QueryData.<переменная> := ''; // <- Вот здесь выскакивает ошибка "[DCC Error] E2064 Left side cannot be assigned to"
end;
Как можно реализовать запись в переменную типа Record внутри другого Record'а? |
|
#7
|
||||
|
||||
|
Всем спасибо. Проблема была решена. Я значение присваивал константе!
![]() |