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

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

TObjectList не преобразовывает item'ы в Duble


Irisss ©   (2010-11-10 09:46:00) 

Задача: нужно передать неизвестно заранее сколько значений типа Double в модуль расчета
решил использовать TObjectList

написал
   
var Dm: Double;
var List: TObjectList;
   for i := 1 to ZetCount
   do begin
       Dm:= Self.getDm( i );
       List.Add(Dm);
   end;


когда начинаю вынимать значения, ругается
на
Dm := List.Items[ i ] as Double;

все это как-то криво, подскажите, как написать более грамотно или решить проблему


Palladin   (2010-11-11 08:42:00) [1]


> затупы бывают, не выспался)

у тебя, парень, не просто затупы, у тебя огромный пробел в знаниях...
взять хотя бы тот же as который ты применил...


_Юрий   (2010-11-10 18:37:00) [2]

Вообще это относится к любым жестким типизациям
X:=MyType(Y);

если вы говорите компилятору: "этот поинтер - на самом деле не поинтер, а<...>", вы таким образом берете на себя всю ответственность, и должны позаботиться о том, что выделенной под Pointer (а именно таков тип элемента листа) памяти хватит для вашего типа.


_Юрий   (2010-11-10 18:21:00) [3]


>  List.Add(Dm);


В листах можно хранить тока 4-байтные данные или меньше (TObject, Pointer - имеют размер 4 байта)
Double имеет больший размер


Irisss   (2010-11-10 10:25:00) [4]

до массивов уже додумался сам, но все равно спасибо
затупы бывают, не выспался)


Jeer   (2010-11-10 10:22:00) [5]


> Irisss   (10.11.10 09:46)  


Поднял настроение, несмотря на циклон или чего-там сейчас на улице..


Dennis I. Komarov   (2010-11-10 10:14:00) [6]

остается узнать куда это все надо передать...
> решил использовать TObjectList

Почему?
> когда начинаю вынимать значения, ругается

И правильно делает
> подскажите, как написать более грамотно или решить проблему

Чем дин. массивы не угодили то?


Andy BitOff   (2010-11-10 10:12:00) [7]

Используй массив.
rtfm передача массива как параметра


Irisss   (2010-11-10 09:56:00) [8]

подскажите как правильно решить, я ж за советом, собственно


Palladin   (2010-11-10 09:51:00) [9]

омг


Наверх

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