|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.07.2013, 22:08 | #11 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
Через Classname::FunctionName() можно вызывать только статический. Но через указатель/ссылку/имя объекта вполне можно вызывать любые методы, квалифицированные именами предков. Последний раз редактировалось _Bers; 30.07.2013 в 23:49. |
|
30.07.2013, 22:16 | #12 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
http://ideone.com/cmRPnJ Класс потомка тащит на борту сразу две версии методов: свой собственный, и метод предка. При этом не важно, виртуальные они, или нет. Если методы виртуальные - то через указатель на предка можно запустить метод потомка, и не более того. Версию предка всегда можно запустить от имени потомка, если явно указать имя предка, что бы компилятор смог понять, какую нужно выбрать версию метода. Но по умолчанию, от имени потомка компилятор запустит версию самого потомка. |
|
31.07.2013, 04:06 | #13 | |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Цитата:
Например, если ты в A::f() вызываешь явно B::g(), а в B::g() вызываешь виртуальный метод h() - то надо учесть, что вызовется A::h(), но ведь B про A (и то как там реализован h) может ниче и не знать. Вывод - все эпически запутано (и классы оказались сильно связаны), бутылка водки не поможет, а какой полезный эффект можно с этого извлечь? ЗЫ.Тут A и B имеют общего предка, кнешно. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос по функциям | miragex | Общие вопросы C/C++ | 5 | 06.01.2013 00:13 |
C++ Вопрос по виртуальным методам | Selestis | Помощь студентам | 5 | 09.09.2011 18:18 |
вопрос по функциям . | Goratics | Общие вопросы C/C++ | 5 | 17.07.2011 12:42 |
Вопрос по функциям | Antowka | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 08.12.2008 22:45 |
глупый вопрос по функциям | steck | Общие вопросы Delphi | 2 | 17.06.2007 15:40 |