Шаблони функцій – це узагальнений опис поведінки функцій, які можуть бути викликані для різних типів об'єктів. Іншими словами, шаблон функції (шаблонна функція, узагальнена функція) являє собою сімейство різних функцій (Або опис алгоритму).
Шаблони (англ. template) – засіб мови C++, призначене для кодування узагальнених алгоритмів, без прив'язки до деяких параметрів (наприклад, типів даних, розмірів буферів, за замовчуванням). У C++ можливе створення шаблонів функцій та класів.
У мові C++ шаблони функцій — це функції, які є зразком для створення інших подібних функцій. Головна ідея — створення функцій без вказівки точного типу(ів) деяких чи всіх змінних. Для цього ми визначаємо функцію, вказуючи тип шаблону, який використовується замість будь-якого типу даних.