logo
Шпора по информатике / 002

16.2 Полиморфизм

При составлении больших программ, например, при совместной работе коллектива разработчиков, могут появляться функции с одинаковыми именами. Кроме того, часто удобно иметь одно имя для функций с разными типами аргументов , например, exp(x) и exp(z) для вещественного значения x и комплексного значения z .

Как указывалось в разделе 14.3, п о л и м о р ф и з м - это правила использования функций с одинаковыми именами для разных целей.

Слово полиморфизм можно трактовать как "многоформенность", многообразие.

( по-гречески μορφη = форма ). Например, графит и алмаз полиморфны, т.к. имеют

одинаковый химический состав, но разный вид и разные свойства.

В ООП полиморфизм реализуется несколькими способами, в которых используются

перегрузка функций, перегрузка операторов, виртуальные функции, шаблоны. Эти разделы ООП сложны и кратко рассмотрим лишь некоторые возможности.

Виртуальную функцию использовали в предыдущем разделе.

В случаях, когда функции с одинаковыми именами находятся в разных классах,

используется полное имя метода для конкретного объекта, например,

obmy.Ma1 :: fmet(z) ;

для примера рис. 14.3.