|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.02.2012, 06:32 | #1 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Странности с полиморфизмом
Что вообще происходит с этим кодом?
Почему полиморфизм срабатывает (действительно срабатывает!) невзирая на то, что функция потомка отличается по сигнатуре? Код:
И ещё такой вопрос: Если я действительно могу из базового класса запустить данный метод предка, то почему тогда я не могу сделать вот так: Код:
То есть, метод Test() я уже запускаю для Derived, а не для базы! Последний раз редактировалось _Bers; 03.02.2012 в 06:48. |
03.02.2012, 09:18 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
03.02.2012, 10:02 | #3 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
ррррр спасибо)
|
03.02.2012, 17:58 | #4 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
В первом же случае, так как функция clone объявлена в базовом классе и при этом виртуальна , то происходит динамическое связываниие за счет таблицы виртуальных функций.
Со мной можно встретиться на www.clipper.borda.ru
|
|
03.02.2012, 20:48 | #5 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
я уже разобрался. Спасиб, Сыроежка)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
UnloadKeyboardLayout - странности | Radical_Edward | Win Api | 0 | 29.01.2012 14:29 |
Странности с отступами | evheniys | HTML и CSS | 7 | 06.06.2011 10:42 |
Странности с исключениями | РагнаР | Общие вопросы C/C++ | 2 | 08.03.2011 22:56 |
странности ControlServiceEx() | m_kostik | Win Api | 5 | 28.10.2010 20:39 |
Странности Chrome` а | ]Wowan[ | Софт | 1 | 27.04.2009 04:11 |