Шаблон функции C ++ (с примером)

Содержание

В этом руководстве мы узнаем о шаблонах функций в C ++ с помощью примеров.

Шаблоны - это мощные возможности C ++, которые позволяют нам писать общие программы.

Мы можем создать одну функцию для работы с разными типами данных, используя шаблон.

Объявление шаблона функции

Шаблон функции начинается с ключевого слова, templateза которым следует параметр (ы) шаблона, за которым следует объявление функции.

 template T functionName(T parameter1, T parameter2,… ) ( // code )

В приведенном выше коде T- это аргумент шаблона, который принимает разные типы данных ( int, floatи т. Д.), И typenameявляется ключевым словом.

Когда аргумент типа данных передается functionName(), компилятор генерирует новую версию functionName()для данного типа данных.

Вызов шаблона функции

После того, как мы объявили и определили шаблон функции, мы можем вызывать его в других функциях или шаблонах (например, в main()функции) со следующим синтаксисом

 functionName(parameter1, parameter2,… );

Например, давайте рассмотрим шаблон, который складывает два числа:

 template T add(T num1, T num2) ( return (num1 + num2); )

Затем мы можем вызвать его в main()функции сложения intи doubleчисел.

 int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << result2 << endl; return 0; ) 
Вызов функции на основе типов данных

Пример: поиск абсолютного значения чисел

 #include using namespace std; template T add(T num1, T num2) ( return (num1 + num2); ) int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << "2 + 3 = " << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << "2.2 + 3.3 = " << result2 << endl; return 0; )

Вывод

 2 + 3 = 5 2,2 + 3,3 = 5,5

Интересные статьи...