How do I write templates and function templates?

In C++, templates allow you to create functions and classes that work with any data type. They enable code reusability and type safety. Function templates are used when you want to create a function that can operate on different data types without having to write the same function multiple times.

Function Template Example

Here is a simple example of a function template that swaps two values:

template <typename T>
T swap(T &a, T &b) {
    T temp = a;
    a = b;
    b = temp;
}

int main() {
    int x = 10, y = 20;
    swap(x, y);
    std::cout << "x: " << x << ", y: " << y << std::endl;

    double m = 1.1, n = 2.2;
    swap(m, n);
    std::cout << "m: " << m << ", n: " << n << std::endl;

    return 0;
}

C++ Templates Function Templates Code Reusability C++ Programming