Главная страница
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.025 c
9-1118410468
grouzd[E]v
2005-06-10 17:34
2005.10.23
Как определить минимальное расстояние от точки до полигона


14-1128273573
Palladin
2005-10-02 21:19
2005.10.23
Cache 5.0.15


11-1109647517
hotes
2005-03-01 06:25
2005.10.23
Модуль Windows


3-1126169492
moor38
2005-09-08 12:51
2005.10.23
Поиск без учетом регистра (знаю, было, но не получается)


14-1126765043
by
2005-09-15 10:17
2005.10.23
DOA vs. ODAC. Програмирующие Oracle + Delphi (Builder) ваш выбор?