البته مثال هایی هم تو سایت هست مثل این
زمانیکه قصد داشته باشید بیشتر از یک نوع را درون تابع یا کلاسی پردازش کنید از template استفاده می کنید و گرنه مجبورید برای هر نوع یک تابع یا کلاس مجزا تعریف کنید
به طور مثال
header
template <class T>
class Sample{
Sample(){}
T processValue(T value);
void printValue(T value);
};
source
#include<iostream>
using namespace std;
template <class T>
T Sample::processValue(T value ){
return value+1;
}
template <class T>
void Sample::printValue(T value){
cout << T;
}