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

Вниз

Сохранение record в TList   Найти похожие ветки 

 
ancot   (2006-05-31 17:30) [0]

Доброго всем дня.
Подскажите как сохранить запись в TList а потом считать ее оттуда

TMyRecord = record
 a, b: Integer;
 c: String;
end;

procedure...
var myrec: TMyRecord;
begin
 myrec.a = 1;
 myrec.b = 1;
 myrec.c = "aaa";

 List.Add(@myrec); // писать вроде так
end;


 
Игорь Шевченко ©   (2006-05-31 17:34) [1]


> Подскажите как сохранить запись в TList а потом считать
> ее оттуда


Выделить память под запись, хранить указатель на нее в TList.

Пример смотреть в db.pas класс TLookupList


 
Reindeer Moss Eater ©   (2006-05-31 17:46) [2]

Да, но рекорд-то при этом сохранится не в листе, а в памяти сбоку.

Представить рекорд в виде непрерывной последовательности байт и сохранить их в элементах TList (по четыре штуки в элементе)


 
tesseract ©   (2006-05-31 17:53) [3]

Только накатал перенесли  ветку :-(
PmyRecord = ^TmyRecord;
TMyRecord = record
a, b: Integer;
c: String;
end;

procedure...
var myrec: TMyRecord;
begin
new(Myrec)
list:=TList.create;
myrec^.a = 1;
myrec^.b = 1;
myrec^.c = "aaa";

List.Add(myrec); // писать вроде так

// Убийство, Freemem строго не рекоменуется, тк. longstring у нас.
Dispose(List.items[0]);  
List.free;
end;


 
AlexWlad ©   (2006-05-31 20:08) [4]

var myrec: ^TMyRecord;
или
var myrec: PMyRecord;

ведь тебе нужен указатель!!!


 
tesseract ©   (2006-05-31 21:26) [5]


> var myrec: ^TMyRecord;

очепятался :-)



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

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

Наверх




Память: 0.48 MB
Время: 0.062 c
2-1148897500
Влад
2006-05-29 14:11
2006.06.18
WinAPI


15-1148405618
Суслик
2006-05-23 21:33
2006.06.18
Про презентацию от Borland


2-1148890598
Barsky
2006-05-29 12:16
2006.06.18
Код ошибки при отправки на SMTP (Indy 9)


2-1149139137
zorik
2006-06-01 09:18
2006.06.18
Как програмно добавить (удалить) язык на языковую панель?


2-1148845528
parovoZZ
2006-05-28 23:45
2006.06.18
Красивое меню (наверное)