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

Вниз

Динамическая коллекция объектов   Найти похожие ветки 

 
begin   (2005-09-27 11:57) [0]

Добрый день.  

  Есть ли в Delphi динамическая коллекция объектов?  Аналог Vector в Java.
  То есть, что то типа:

  collection.Add(newObject);
  object:=MyObject(collection.GetN(n));


 
alex_***   (2005-09-27 12:16) [1]

TObjectList


 
begin   (2005-09-27 15:22) [2]

Наверное я что-то делаю не правильно.
 Сначала вставляю объекты в TObjectList:

 while (not oldQ.Eof) do
   begin
        menu:=TMenu.Create.Create;
        menu.name:=oldQ.FieldByName("name").AsString;
        menu.description:=oldQ.FieldByName("description").AsString;
        menu.author:=oldQ.FieldByName("author").AsString;
        menuList.Add(menu);
        oldQ.Next;
   end;


 Потом достаю:


     for i:=1 to menuList.Count do
       begin
         menu:=Tmenu(menuList.Items[i-1]);
         ......
         q.ExecSQL;
       end;


 Достается только все время последний вставленный объект.   Как сделать правильно ?


 
Digitman ©   (2005-09-27 15:50) [3]


> menu:=TMenu.Create.Create


это что за галиматья ?  Create.Create в смысле ? сам-то понял, что здесь сказал ?


> Потом достаю


из широких штанин ?)

нет, ну я понимаю конечно же мазохистское удовольствие : сначала организовать цикл от 1 до N, а в теле цикла индексировать элемент списка вычитая всякий раз из индекса единицу)


 
Внук ©   (2005-09-27 16:28) [4]

>>Digitman ©   (27.09.05 15:50) [3]
>> menu:=TMenu.Create.Create
 Самое смешное, что это будет работать совершенно корректно. Насколько я знаю.


 
Внук ©   (2005-09-27 16:39) [5]

При условии, что в самом конструкторе не создаются динамические объекты. Тогда, конечно, утечка памяти. В TMenu они создаются...


 
Digitman ©   (2005-09-27 17:16) [6]


> Внук ©   (27.09.05 16:28) [4]

а говоришь при этом, что

>  это будет работать совершенно корректно


))



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

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

Наверх




Память: 0.48 MB
Время: 0.036 c
14-1128072525
LordOfRock
2005-09-30 13:28
2005.10.23
Радио Maximum


14-1127992402
alk20
2005-09-29 15:13
2005.10.23
Помогите программа не работает так как надо из под win 98


14-1128022479
lookin
2005-09-29 23:34
2005.10.23
CSKA-MIDT


4-1124470748
NikNet
2005-08-19 20:59
2005.10.23
Как сделать Explorer для Реестра


14-1128498684
-SeM-
2005-10-05 11:51
2005.10.23
GUI-аналог cacls.exe