Главная страница
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.043 c
2-1128174460
NightLord
2005-10-01 17:47
2005.10.23
Программное создание компонента


1-1127921676
Still Swamp
2005-09-28 19:34
2005.10.23
CreateOleObject - как создать два объекта?


3-1126674133
erika
2005-09-14 09:02
2005.10.23
Порядковый номер в наборе данных


14-1128431430
nk
2005-10-04 17:10
2005.10.23
Запись CD посредством чего-либо...


14-1128091925
vidiv
2005-09-30 18:52
2005.10.23
Ваши ассоциации связанные с названием сайта Непом.Ру