template<typename T>
Allows writing generic functions and classes that work with any type, resolved at compile time for maximum performance.
Syntax
cpp
template<typename T>
returnType funcName(T param) { }Example
cpp
template<typename T>
T maxOf(T a, T b) { return a > b ? a : b; }
cout << maxOf(3, 7); // 7 (int)
cout << maxOf(3.14, 2.71); // 3.14 (double)
template<typename T>
class Stack {
vector<T> data;
public:
void push(T val) { data.push_back(val); }
};