![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Возвращаемое значение [D6, WinXP]
MikePol © (2004-10-18 16:22:00)Класс динамического массива, хранящий указатели на объекты этого класса, с методом добавления элемента.
type
TMyClass=class;
PMyClass= ^TMyClass;
TMyClass=class
........
X:array of PMyClass;
procedure Add(const Tmp:PMyClass);
end;
procedure TMyClass.Add(const Tmp:PMyClass)
begin
inc(FSize);
SetLength(X,size);
X[size-1]:=Tmp;
end;
Вызов :
Obj:TMyClass;
Obj.Add(PMyClass(TMyClass.Create));
Djghjc Obj:PMyClass;
Вопрос : Как сделать так чтобы это заработало ?
Ega23 (2004-10-18 17:05:00) [1]
Obj:TMyClass;
Obj.Add(PMyClass(TMyClass.Create));
А Obj ты до этого создал?
VMcL (2004-10-18 17:03:00) [2]>> begin...end © (18.10.04 16:38) [7]
Тогда уж TClassList.
-=SS=- (2004-10-18 16:47:00) [3]> begin...end © (18.10.04 16:38) [7]
Да begin...end прав не изобретай велосипед.
begin...end (2004-10-18 16:38:00) [4]
> [5] MikePol (18.10.04 16:34)
Ты там случайно не TObjectList изобретаешь? ;-)
MikePol (2004-10-18 16:34:00) [5]TMyClass указатель ?
Тогда я перепарился ... Извините :)
-=SS=- (2004-10-18 16:34:00) [6]А я бы лутше использывал вместо SetLength() GetMem(Count_Element,sizeof(TMyClass))
begin...end (2004-10-18 16:33:00) [7]
> [2] MikePol (18.10.04 16:31)
> Указатели не валидные почему то ..
Как ты пришёл к такому выводу?
MikePol (2004-10-18 16:31:00) [8]Указатели не валидные почему то ..
Amoeba (2004-10-18 16:31:00) [9]
> type
> TMyClass=class;
> PMyClass= ^TMyClass;
А зачем еще нужен указатель на указатель? TMyClass - уже указатель. Так что для начала убери к чертям собачьим
PMyClass= ^TMyClass;
begin...end (2004-10-18 16:28:00) [10]А что, собственно, не работает?