Ad-hoc, включение, параметрические и принудительные полиморфизмы
Опубликовано: 2 Декабря, 2021
Когда мы говорим о полиморфизме в C ++, мы слышим следующие четыре типа:
Обсуждая их подробно:
- Специальный полиморфизм , также называемый перегрузкой
Специальный полиморфизм позволяет функциям с одним и тем же именем действовать по-разному для разных типов. Например:
Оператор + складывает два целых числа и объединяет две строки.Приведенный выше пример можно было бы лучше проиллюстрировать, вызвав функцию «sum ()» в нижеупомянутом коде:
#include <iostream>
using
namespace
std;
int
sum(
int
x,
int
y)
{
int
c = x + y;
return
c;
}
string sum(
const
char
* x,
const
char
* y)
{
string summation(x);
summation += y;
return
summation;
}
int
main()
{
cout << sum(50, 20)
<<
" :- Integer addition Output "
;
cout << sum(
"Polymorphism"
,
" achieved"
)
<<
" :- String Concatenation Output "
;
}
Выход:70: - Выход целочисленного сложения Достигнутый полиморфизм: - Вывод конкатенации строк
РЕКОМЕНДУЕМЫЕ СТАТЬИ