Вниз
Скачать: CL | DM;

Как получить указатель на инкапсулирующий объект   Найти похожие ветки 

 
HRustBB   (2010-05-10 19:23) [0]

имеется вот такой набор классов

Citems = class
 id:integer;
 name:string;
public

private

end;

itemsarray = class
 items:array of Citems;
public
 
private

end;

dirCitems = class
 items:itemsarray;
public

private

end;


Возможно ли в Citems както получить указатель на объект класса dirCitems.


 
Плохиш ©   (2010-05-10 19:39) [1]


> Возможно ли в Citems както получить указатель на объект
> класса dirCitems.

Нет


 
Дмитрий Белькевич   (2010-05-10 19:45) [2]


> Возможно ли в Citems както получить указатель на объект
> класса dirCitems.


Добавить в Citems поле-указатель на dirCitems. dirCitems описать раньше Citems:

type dirCitems = class;

и, да, названия полей, классов сделать общепринятые. Каша глаза режет.


 
HRustBB   (2010-05-10 19:48) [3]


> и, да, названия полей, классов сделать общепринятые. Каша
> глаза режет.


виноват исправлюсь


 
Дмитрий Белькевич   (2010-05-10 20:01) [4]

Далее. При создании Citems"ов проставлять поле-указатель в Citems на Self dirCitems"ов. Скорее всего добираясь до поля Citems"а через метод itemsarray, который (метод) будет менять размерность items. Немного криво объяснил из-за названий. Но, надеюсь, будет ясно.

Но имхо немного дизайн объектов кривой. Хотя, возможно, ошибаюсь - случаи всякие бывают.

По названиям:

http://www.interface.ru/home.asp?artId=16369


 
Дмитрий Белькевич   (2010-05-10 20:02) [5]

>дизайн объектов

Читать: дизайн классов.


 
Юрий Зотов ©   (2010-05-10 22:12) [6]


> HRustBB   (10.05.10 19:23)  

Можно использовать коллекции, там ссылка на контейнер уже есть:

Citems = class(TCollectionItem)
id:integer;
name:string;
 ...
end;

dirCitems = class(TCollection)
...
end;

Как все это делается - см. здесь:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=215



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.056 c
15-1264052610
brother
2010-01-21 08:43
2010.08.27
Эпидемия ICQ - PiGGy.zip


15-1269253044
Правильный$Вася
2010-03-22 13:17
2010.08.27
автоматический перевод часов в системе


2-1273989815
fallen_from_skies
2010-05-16 10:03
2010.08.27
создание программы для тестирования учащихся


2-1270329778
Б
2010-04-04 01:22
2010.08.27
String -> WideChar


11-1216669322
Сашик
2008-07-21 23:42
2010.08.27
KOL: нужно ли освобождать память после VarArrayCreate...




   Наверх