Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];
Вниз
StringList Найти похожие ветки
← →
D7 (2008-11-04 15:41) [0]Можно ли в StringList добавить свою запись? Что-то типа: List.AddObject(S, TObject(MyRecord)); // MyRecord: TMyRecord;
← →
Плохиш © (2008-11-04 15:44) [1]О, дима голубков пожаловал...
← →
alexeis © (2008-11-04 15:59) [2]Ну этот метод для того и создан по идее)
← →
alexeis © (2008-11-04 16:04) [3]
TMyRec = record
s:string;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var sl:TStringList;
myRec:TMyRec;
begin
sl := TStringList.Create;
myRec.s := "casddasdas";
sl.AddObject("1",TObject(myrec));
ShowMessage(TMyRec(sl.Objects[0]).s);
Примерно так
← →
Palladin © (2008-11-04 16:05) [4]
> alexeis © (04.11.08 16:04) [3]
да ты что... а мужики то и не знают...
← →
alexeis © (2008-11-04 16:12) [5]А если знают - почему спрашивают?)
← →
Palladin © (2008-11-04 16:13) [6]мне указать на твое великое заблуждение, а так же почему в этом случае компилируется или сам справишься?
← →
alexeis © (2008-11-04 16:19) [7]Если есть время и желание - укажи
← →
{RASkov} © (2008-11-04 16:29) [8]> [7] alexeis © (04.11.08 16:19)
добавь в свой TMyRec еще хотябы одно поле и попробуй скомпилировать...
например:
TMyRec = record
s, s1: string;
end;
указатель и TObject = 4 байтам....
строка String тоже 4 байта...
← →
{RASkov} © (2008-11-04 16:36) [9]> [0] D7 (04.11.08 15:41)
> Можно ли в StringList добавить свою запись?
Можно. Выделяем память под запись, а указатель на запись пишем в объект стринглиста...
← →
D7 (2008-11-04 16:38) [10]
> Можно. Выделяем память под запись, а указатель на запись
> пишем в объект стринглиста...
Большое спасибо
← →
{RASkov} © (2008-11-04 16:46) [11]Вот:
TMyRec = record
i: Integer;
s: string;
end;
PMyRec = ^TMyRec;
..........
var myRec: PMyRec;
...............
New(myRec);
myRec^.i := 2;
myRec^.s := "abracadabra";
sl.AddObject("1", TObject(myrec));
...........
ShowMessage(IntToStr(PMyRec(sl.Objects[0])^.i)+" - "+PMyRec(sl.Objects[0])^.s);
.......
при типизированных указателях "крыши" ставить не обязательно...
← →
Palladin © (2008-11-04 16:52) [12]
> alexeis © (04.11.08 16:19) [7]
Саша ужо донес глас истины )
> {RASkov} © (04.11.08 16:46) [11]
+ Dispose(PMyRec(sl.Object[i])) в обязательном порядке перед sl.Free
← →
alexeis © (2008-11-05 12:43) [13]ок, и я буду знать)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c