![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Всем привет. Не вдаваясь в подробности, сразу задам вопрос, как при построении классов, объявить в одном из них, объект с типом, который объявляется ниже? Например
Код:
type TBag = class ... public Box1 : TBox end; type TBox = class ... public Bag1 : TBag end; Вот по сути, объект сумка, который хранит коробку, которая хранит сумку и т.д., классы местами поменять не могу, поэтому нужно выкручиваться. Да, я могу указать Box1 как pointer и при разработке присваивать его уже TBox, но хотелось бы без костылей/ |
|
#2
|
||||
|
||||
|
Код:
type
TBox = class;
TBag = class
FBox: TBox;
end;
TBox = class
FBag: TBag;
end; |
|
#3
|
|||
|
|||
|
ещё вместо pointer-ов можно использовать TObject или других предков + слово as для приведения
|