Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
NetMinon
0 / 0 / 1
Регистрация: 16.12.2006
Сообщений: 88
#1

В чем смысл виртуальных функций?

13.03.2008, 23:34. Просмотров 1097. Ответов 6
Метки нет (Все метки)

Читаю книгу Джесс Либерти 'С++ за 21 день', не смотря на глупое название, книга очень грамотная и мне очень нравится...
но прочитав раздел посвященный вмртуальным фуекциям - не понял зачем они нужны и как все это применить на практике...
да и вообще эта тема там мало освещена...
Заметил что в базовых классах очень много таких функций...

Если кто хорошо знает эту тему и применяет это все на практике, пожалуйста обьясните...
Заранее благодарен, Роман.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2008, 23:34
Ответы с готовыми решениями:

Перегрузка виртуальных функций
please HELP! перегружаю виртуальную функцию в абстрактном классе. class ONE { virtual...

Механизм виртуальных функций
Всем привет! Имею базовый абстрактный класс: class Interface { public: //функция...

Использование виртуальных функций
Программа берет данные из двух файлов, в которых есть дата и количество проданных билетов, и...

Таблица виртуальных функций
Доброго дня! Не могу найти, подскажите, пожалуйста, таблица виртуальных функций же только одна для...

Таблица виртуальных функций
объясните плиз кто разбирается.. есть абстрактный класс с двумя виртуальными функциями, от него...

6
NetMinon
0 / 0 / 1
Регистрация: 16.12.2006
Сообщений: 88
13.03.2008, 23:39  [ТС] #2
Да и зачем ссылаться на производный клас присваивая указателю тип базового?
0
NetMinon
0 / 0 / 1
Регистрация: 16.12.2006
Сообщений: 88
14.03.2008, 02:57  [ТС] #3
единственное применение которое я нашел данному методу - это создание масива обьектов... в других же случаях можно просто подменить нужную функцию в производном классе... что избавляет от кучи проблем, связаных с недоступностью новых функций производного класса (пожно конечно привести тип указателя к типу производного класса, но это сильно затруднит понимание и написание программы)...

ничего не понимаю...
0
NetMinon
0 / 0 / 1
Регистрация: 16.12.2006
Сообщений: 88
16.03.2008, 15:19  [ТС] #4
да и еще передача указателя на обьект как параметр функции, дабы не плодит перегруженых вариантов...
0
mort
17.03.2008, 03:44 #5
Сложно вес это обьяснить в дыух словах. Купи книжку Г.Шилд 'Программирование на с/c++' - стоит не много и на мой взгляд достатоно понятно описывает концепцию обьектного программирования.
mobi_DI
0 / 0 / 0
Регистрация: 05.02.2008
Сообщений: 23
17.03.2008, 14:16 #6
Для разбиения программы на
независимые друг от друга модули.
Которые общаются между собой и дергают друг
за друга через интерфейсы(указатели на базовые классы).
Такие модули могут легко заменяться и разрабатываться
паралельно группой программистов НЕ ЖЕЛАЮЩИХ БЕГАТЬ ДРУГ
ЗА ДРУГОМ с просьбой сообщать о последних изменениях.
0
Archie
18.03.2008, 17:27 #7
или например тебе требуется пробежать по массиву контролов, ясно что они должны быть отнаследованы от базового класса/интерфейса
18.03.2008, 17:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2008, 17:27

Использование виртуальных функций
Дан класс "треугольник", который определяется длиной одной из сторон и значениями прилегающих...

Вызов виртуальных функций
Доброго времени суток, форумчане! Стоит такая задача: Есть класс, который содержит три чисто...

Замена виртуальных функций шаблонами
Такая задача - нужно заменить виртуальные функции шаблонами. Можно сделать так: struct Derived1;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru