|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.06.2010, 22:53 | #1 |
Пользователь
Регистрация: 27.04.2010
Сообщений: 16
|
Как из класса B обратиться к классу A, владеющему классом B?
Есть 2 класса
Код:
Последний раз редактировалось Stilet; 23.06.2010 в 16:35. |
18.06.2010, 23:06 | #2 |
Участник клуба
Регистрация: 06.04.2009
Сообщений: 1,524
|
Если не ошибаюсь, у класса есть свойство Parent или что то в этом роде, если к нему обратится то можно получить доступ к свойствам и методам класса предка. К свойствам и методам в разделе privat может получить только тот класс (наследник) который находится в том же файле что и класс предок
|
18.06.2010, 23:16 | #3 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
сами задайте св-во по типу Parent обозначабщее родителя, иначе никак.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
19.06.2010, 02:09 | #4 |
Пользователь
Регистрация: 27.04.2010
Сообщений: 16
|
Дело в том что описания классов находятся в разных файлах. Была мысль обьявить в классе B указатель на A, но это невозможно, потому что тогда необходимо будет указать в uses имя файла с классом A, в свою очередь в классе A в uses уже имеется имя файла с классом B. Компилятор естественным образом это отвергает, циркуляция говорит.
|
19.06.2010, 17:19 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
значит меняйте планировку классов.
ибо если класс B не знает что такое класс A то как он может обратится к члену класса? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
23.06.2010, 15:39 | #6 |
Пользователь
Регистрация: 27.04.2010
Сообщений: 16
|
Вопрос остается открытым. Оба класса имеют порядка 20 методов и помещать их в один файл очень неудобно. Вопрос довольно редкий потому как оптимальное решение ищу уже месяца 2. Для наглядности приведу пример для чего это нужно: есть класс (родитель) "игрок" его свойства включают в себя: показатели игрока (статистика и всевозможные игровые показатели), различные методы для вычисления этих показателей А ТАКЖЕ список (List) из экземпляров класса "задание". Т.е. список задач для выполнения (что-то типа бота). Класс "задание" тоже имеет свои методы для которых требуются игровые показатели игрока которому принадлежит эта задача. таким образом класс задание может принадлежать только классу "игрок", сам по себе он не может существовать.
|
23.06.2010, 15:42 | #7 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Значит унаследуйся от него.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
23.06.2010, 16:02 | #8 |
Пользователь
Регистрация: 27.04.2010
Сообщений: 16
|
Не рационально, потому как все экземпляры класса "задание" будут иметь одни и те же значения игровых показателей, а их там огромное количество, и к тому же при создании класса "задание" в конструкторе придется копировать все эти значения. И при изменении этих показателей придется изменять их во всех заданиях
|
23.06.2010, 16:37 | #9 |
Форумчанин
Регистрация: 28.01.2008
Сообщений: 267
|
А вы непробовали в Обоих файлах сделать так:
Код:
Код:
Не забываем говорить спасибо за помощь - это ведь так приятно
|
23.06.2010, 16:37 | #10 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
Типы в interface обьявляются а не в implementation Uses нужно именно перед type писать
I'm learning to live...
|
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как узнать какому классу принадлежит объект? | boris-blade | Общие вопросы .NET | 3 | 08.04.2010 01:08 |
Почему из метода класса нельзя обратиться к компоненту на форме? | Дима я | Общие вопросы Delphi | 2 | 28.03.2010 13:21 |
Как обратиться к объекту формы из другого класса java | micha-r | Общие вопросы по Java, Java SE, Kotlin | 1 | 03.10.2009 21:07 |
Известны оценки по физике каждого из 20 учеников класса. Определить среднюю оценку по классу | sinid | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 23.01.2009 17:30 |
Обратиться к классу (Delphi) | Air | Помощь студентам | 16 | 17.07.2008 19:51 |