Шаблон за функция на 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

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