Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2013, 00:49   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
Вопрос Circular unit reference to %s и принцип "1 класс - 1 модуль"

Доброго времени суток!

Есть некий ObjectList, который хранит в себе некоторые TThread
TThread в свою очередь имеет property ссылающуюся на этот TObjectList.

Живут в разных модулях.

Как разрешить им ссылаться друг на друга? Объемы кода каждого класса больше 2 тысяч строк, а в коде потоке все 4 тысячи. Очень не хочется их вместе склеивать.

Ранее было так:
Код:
interface

uses ....;

type
  TMyLIst = class;
  TMyThrea = class;

  TMyList = class(TObjectList)
  private
  fThread:TMyThread;
  ....
   end;

  TMyThread = class(TThread)
  private
  fOwner:TMyList;
  ....
   end;
Так работало, но очень и очень сильно трудно ориентироваться в 8к строках, особенно при отладке.

Кто что посоветует?
Человек_Борща вне форума Ответить с цитированием
Старый 04.01.2013, 07:04   #2
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Код:
unit Unit2;

interface

type
  TThreadByUnit3 = Pointer;

  TObjectList = class
    F: TThreadByUnit3;
  end;

implementation

uses
  Unit3;

end.
Код:
unit Unit3;

interface

uses
  Unit2;

type
  TThread = class;

  TThread = class
    F: TObjectList;
  end;

implementation

end.
Sibedir вне форума Ответить с цитированием
Старый 04.01.2013, 13:22   #3
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

http://programmersforum.ru/showthread.php?t=166755
поиск по слову "циклическая"
Насколько я понял - примерно тоже самое, что предлагает Sibedir , т.е. приведение типа уже в реализации.
phomm на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") funnyy Помощь студентам 3 17.10.2012 17:40
Ошибка "cannot resolve unit name" при переносе проекта с Delphi7 на DelphiXE Ferkel Общие вопросы Delphi 1 16.06.2012 13:01
"Magic Eye" tube- принцип работы Levsha100 Свободное общение 4 06.07.2010 04:07
Ошибка "Circular unit reference to". Вадим Буренков Общие вопросы Delphi 4 05.07.2009 12:04