Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.072 c
11-1221313480
DJ Vusal
2008-09-13 17:44
2010.08.27
Проблема OLE обращений из Delphi в Excel


15-1265069211
Кто б сомневался
2010-02-02 03:06
2010.08.27
Законы общества


3-1238620116
ivanoff
2009-04-02 01:08
2010.08.27
как осуществить SQL выборку только по времини


2-1274523488
Delphist2
2010-05-22 14:18
2010.08.27
excel


2-1266443303
Funtik
2010-02-18 00:48
2010.08.27
LIstBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский