Введение в шаблоны в C++
Шаблон функции - это объявление, в котором тип параметра обозначен буквой вместо конкретного имени типа.
Компилятор подставляет нужный тип при каждом
обращении к функции, поэтому одно описание
заменяет целый ряд почти одинаковых функций.
Запишем шаблон twice, который удваивает
значение аргумента, и вызовем его для целого:
#include <iostream>
template<typename T>
T twice(T x) {
return x + x;
}
int main() {
std::cout << twice(7) << "\n";
return 0;
}
Параметр T в угловых скобках перед
возвращаемым типом и в списке аргументов
означает «любой подходящий тип».
Тот же шаблон сработает и для дробного,
и для других типов, где определено сложение
с самим собой.