Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

Circular reference   Найти похожие ветки 

 
maxic   (2004-01-29 01:07) [0]

Есть 2 модуля с классами:

Unit1;

uses unit2;

type
TClassUnit1 = class
....
FField: TClassUnit2;
end;
-----------

Unit2;

uses unit1;

type
TClassUnit2 = class
....
FField: TClassUnit1;
end;

Естественно, при компиляции выдается ошибка Circular reference. Скажите, как можно ее избежать? Т.е. оставить, чтобы классы из обоих модулей ссылались друг на друга. Перенос все в один модуль нецелесообразен!


 
Германн ©   (2004-01-29 01:28) [1]

Ты не привел месторасположение секций interface и implementation!
Далее просто. Если оба объявления должны быть в секциях interface, то без дополнительного модуля, в котором описаны эти классы не обойтись.
Если же не так, то, хотя-бы, какое-то одно объявление должно быть помещено в секцию implementation


 
Palladin ©   (2004-01-29 02:37) [2]


> maxic (29.01.04 01:07)

Подумай еще раз над своей схемой. И почему перенос в один модуль не целесообразен, это очень дурной тон... если классы ссылаются друг на друга, то как минимум оно должны быть в одном модуле иначе плохо...



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

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
3-16102
Lonely
2003-12-16 12:12
2004.02.06
Програмное добавление поля в таблицу Paradox


8-16522
o2
2003-10-02 14:45
2004.02.06
DirectX


14-16624
Andersen
2004-01-14 12:10
2004.02.06
Чудеса да и только


4-16827
Reanimator
2003-11-30 23:28
2004.02.06
Как по хендлу окна получить путь к екзешнику


6-16578
Dimitry
2003-11-27 22:10
2004.02.06
Как написать простенький прокси на делфи