![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Участник клуба
Регистрация: 04.04.2010
Сообщений: 1,554
|
![]()
К примеру мне нужно наделить ряд совершенно разных классов, с совершенно различными предками, общим функционалом. Пускай это будет функционал с помощью которого классы могут посылать сообщения о своей работе и подписываться на сообщения других классов. В с++ можно было бы просто использовать множественное наследование классов, и те классы, которым данный функционал требуется, унаследовать от какого-нибудь ReportSender, в котором и собрать данные методы. А соответственно те классы, которым это не нужно, не наследовать от него.
Как это можно реализовать в С#? Можно сделать ReportSender базовым классом для нужных классов, но возникнут например проблемы с классами у которых уже есть предок, да ещё и какой-нибудь библиотечный. Можно заменить отношения наследования на отношение агрегации, и соответственно наследовать нужным классам интерфейс IReporter { ReportSender Reports{get;set;} } Уже получше, но это тоже не очень, т.к. придётся это ещё и ручками в каждом случае инициализировать. Как бы эту задачу удобнее решить. Может зря нас лишили множественного наследования? |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 17.12.2008
Сообщений: 250
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос по множественному наследованию классов с++ | GartesK | Общие вопросы C/C++ | 7 | 14.11.2011 22:00 |
задача по наследованию в С++ | Евгений1221 | Помощь студентам | 1 | 12.05.2011 01:13 |
Альтернатива Sleep; | mrbadge | Общие вопросы Delphi | 16 | 02.05.2011 17:33 |
Вопрос по наследованию | katbka | Помощь студентам | 0 | 13.05.2010 18:31 |