Форум программистов, компьютерный форум CyberForum.ru

Полиморфизм - C++

Восстановить пароль Регистрация
 
lousch
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 3
07.12.2013, 15:01     Полиморфизм #1
Сколько я не читал книг и уроков по С++-программированию, я так и не смог понять что такое полиморфизм.

Можно ли как-то просто и доступно объяснить что такое полиморфизм, как его использовать, зачем, когда его лучше избегать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2013, 15:01     Полиморфизм
Посмотрите здесь:

Полиморфизм C++
C++ полиморфизм
C++ Полиморфизм
Полиморфизм. C++
Полиморфизм c++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.12.2013, 15:16     Полиморфизм #2
Вот тут код на эту тему: Создается объект абстрактного класса:(
gazlan
2862 / 1810 / 272
Регистрация: 27.08.2010
Сообщений: 4,899
Записей в блоге: 1
07.12.2013, 16:04     Полиморфизм #3
Цитата Сообщение от lousch Посмотреть сообщение
что такое полиморфизм
Полиморфизм - это способ управления сходными объектами: общие свойства выделяются, частные игнорируются.

Если, например, в отделе работают трое: Иванов, Петров и Сидоров, то с точки зрения начальника, у него есть три Исполнителя, к любому их которых можно обратиться с командой Исполнить. Однако, результаты исполнения могут (или должны) при этом различаться.

Скажем, если Исполнитель - это артист, выступающий на концерте с сольным номером, то, по команде Исполнить, один исполнит скрипичный концерт, другой споет, а третий поскачет вприсядку.

Урок 38 Полиморфизм
Полиморфизм для начинающих (PHP)
Yanush
 Аватар для Yanush
154 / 150 / 44
Регистрация: 28.09.2013
Сообщений: 281
Завершенные тесты: 1
07.12.2013, 17:57     Полиморфизм #4
Просто и доступно. На примере геометрических фигур.
Есть базовый класс "фигура". У него определен виртуальный метод (например: "Отобразить").
Наследуем от этого класса (например: треугольник) и переопределяем метод "Отобразить".
Таким образом в итоге получится несколько различных классов (напр: круг, квадрат, треугольник), у каждого из которых будет переопределен метод "Отобразить".

А после этого, можно создать кучу экземпляров этих классов и засунуть их в один массив (с типом базового класса). Вызывая метод "Отобразить", мы задействуем механизм полиморфизма, то есть для каждого экземпляра класса будет вызван переопределенный метод этого класса.
Yandex
Объявления
07.12.2013, 17:57     Полиморфизм
Ответ Создать тему
Опции темы

Текущее время: 06:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru