template <δηλώσεις τύπων> δήλωση συνάρτησης με βάση τους τύπουςΤο παρακάτω παράδειγμα ορίζει τη συνάρτηση swap που εναλλάσσει μεταξύ τους τις δύο μεταβλητές - ορίσματα της συνάρτησης:
// File tswap.h template <class T> void swap(T &a, T &b) { T c; c = a; a = b; b = c; }
// File swaptest.cpp #include <iostream.h> #include "tswap.h" main() { int a = 1, b = 2; double da = 1.1, db = 2.2; swap(a, b); // Swap two integers swap(da, db); // Swap two floating point numbers cout << a << "," << b << "\n"; cout << da << "," << db << "\n"; }
Το παρακάτω παράδειγμα θα τυπώσει 3:
#include <iostream.h> template <typename T> T max(T a, T b) { if (a > b) return (a); else return (b); } main() { cout << max<int>(3.1415, 1.4142) << "\n"; }