Шаблоны функций - typename
В функцию можно передавать аргументы любых типов с помощью конструкции <typename T1> или <typename T1, typename T2>, где Tх - это тип переданной переменной.
#include <iostream>//Подключаем cin и cout и др.
using namespace std;//Пространство имён
template <typename T1, typename T2>//T1 и T2 - это новые типы
int f(T1 a, T2 b)//Функция принимает любые типы
{
return a+b;//Выход из функции
}
int main()
{
setlocale (LC_ALL, "rus");//Кириллица
cout << f(5,5.0) << endl;//Вызываем функцию с разными типами - 10
system("pause");//Команда задержки экрана
return 0;
}