Главная страница
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.031 c
1-16512
MakNik
2004-01-27 10:14
2004.02.06
PopupMenu


1-16483
Alexei Sviridov
2004-01-27 14:21
2004.02.06
RxLoginDialog


3-16188
Noname
2004-01-15 15:31
2004.02.06
временные таблицы


1-16487
Begin
2004-01-27 13:53
2004.02.06
TSringGrid. Сорри за тупой вопрос...


1-16347
KIR
2004-01-27 11:15
2004.02.06
Ошибка в winnt.dll и больше никаких сообщений...