Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

входящый параметр [D7, WinXP]


Страницы:   1 2

Suvit ©   (2005-01-20 12:42:00) 

написал процедуру

procedure Shuffle(var List:TList);
var i : Integer;
begin
 Randomize;
 for i := List.Count -1 downto 0 do
   List.Exchange(i, Random(i+1));
end;

теперь хочется прикрутить ее к TInterfaceList
но так как он не унаследован от TList у меня не получается.
поскажите как мне переделать параметр у процедуры, чтобы она могда принимать объекты класса TList,TObjectList, TInterfaceList
ЗЫ: стоит ли вызывать Randomize каждый раз или достаточно 1 раза


ЮЮ   (2005-01-20 13:06:00) [21]

Чтобы не было соблазна убить переданный в качестве параметра объект и вместо него создать новый


Sandman25   (2005-01-20 13:06:00) [22]

[4] Suvit   (20.01.05 12:59)

List - это уже ссылка. Использование указателя на указатель на класс приводит к замедлению работы.


Suvit   (2005-01-20 12:59:00) [23]


> var лучше убрать.

Объясните, пожайлуста, почему?


Suvit   (2005-01-20 12:57:00) [24]


> А параметр можно сделать типа TObject.

но у TObject нету Count Exchange


Sandman25   (2005-01-20 12:56:00) [25]

var лучше убрать.
можно сделать несколько версий с overload


Александр Иванов   (2005-01-20 12:48:00) [26]

Randomize достаточно вызывать один раз. А параметр можно сделать типа TObject.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо