![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Grol |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 159 Регистрация: 5.5.2005 Где: Россия Репутация: нет Всего: нет |
Добрый день. Необходимо ответить на вопросы по ООП:
1. Что такое Виртуальные функции? Для чего они нужны и где применяются? 2. Что такое Виртуальные деструкторы? Также для чего они нужны и где применяются? Можно напримере не виртуальных деструкторов. 3. Почему не бывает виртуальных конструкторов (а если бывают точто это такое)? Всем спасибо заранее за ответы, но небольшая просьба: Пожалуйста отвечайте на вопросы только на те на которые точно знаете ответ. То есть, чтоб не было такого -> "наверное это все таки.....или еще что-то". Это сообщение отредактировал(а) Grol - 4.6.2006, 11:56 --------------------
Живи так, как будто тебе предстоит умереть завтра...Учись так, как будто тебе предстоит жить вечно......... |
|||
|
||||
| bel_nikita |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2304 Регистрация: 12.10.2003 Где: Поезд №21/22 ( ст . Прага ) Репутация: 21 Всего: 47 |
Круто!
Возьми книгу Г.Шилда, там все очень хорошо и подробно описано. |
|||
|
||||
| Fazil6 |
|
||||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
Добавлено @ 12:57
это деструктор, объявленный с словом virtual. Необходимо это для того же, для чего и другие виртуальные функции, чтобы в нужный момент вызвался деструктор того объекта, который удаляется
|
||||||||
|
|||||||||
| Fazil6 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
более того в конструкторах виртуальный механизм вообще не действует. Дело в том, что вызов виртуального метода предполагает вызов метода потомка, но если мы вызываем виртуальный метод в конструкторе родителя, к этому моменту еще не вызывался конструктор потомка и члены-данные потомка проинициализированы не могут быть и поэтому вызов метода из потомка в этот момент не может быть осуществлен. А виртуальность применительно конструкторов вообще не имеет смысла., потому, что при создании объекта по очереди вызываются все конструкторы по иерархии и выбора что вызывать(как в случае виртуальных ф-й) здесь просто нет |
|||
|
||||
| Grol |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 159 Регистрация: 5.5.2005 Где: Россия Репутация: нет Всего: нет |
bel_nikita - а есть электронная книга этого автора?
Fazil6 - спасибо попробую разобраться. --------------------
Живи так, как будто тебе предстоит умереть завтра...Учись так, как будто тебе предстоит жить вечно......... |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
А поиском по форуму пользовались? -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| Xenon |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
В разделе "книги"
|
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
Язык C++ - статически типизован При создании объекта его тип точно должен быть известен, потому тут и невозможны в принципе виртуальные механизмы -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |