![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
![]() Цитата:
Код:
В твоем случае,вызывающей стороне нужно будет знать точно, что за наследник к ней пришел, что бы знать, какие методы можно дергать, а какие нельзя. Для этого, тебе придется в каждую такую функцию внедрять код рантайм-идентификации типов, и логику обработки каждого наследника. Что сразу же скажется и на сложности кода (много лишних трудно-понимаемых букв получится), и на производительности (много лишних проверочных действий, и дополнительных логик по обработке) С таким же успехом, вместо одной: Код:
Код:
Интерфейсы для этого уже не нужны. Тебе нужно понять главную идею интерфейсов: они нужны для того, что бы вызывающая сторона могла единообразно обработать всех возможных потомков интерфейса. Даже тех, чей код ещё не написан. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Полиморфизм | Кудаив | Помощь студентам | 3 | 20.05.2012 14:03 |
Полиморфизм. | Wa1demar | Общие вопросы C/C++ | 0 | 04.03.2012 14:23 |
Полиморфизм | Zorgan | Visual C++ | 22 | 29.08.2011 12:23 |
Полиморфизм | MasterSporta | Общие вопросы C/C++ | 3 | 10.04.2011 23:46 |
Полиморфизм | mister2010 | Общие вопросы C/C++ | 30 | 24.05.2010 01:07 |