У овом упутству ћемо научити о предлошцима функција у Ц ++ уз помоћ примера.
Предлошци су моћне карактеристике Ц ++-а који нам омогућава писање генеричких програма.
Помоћу шаблона можемо створити једну функцију за рад са различитим врстама података.
Изјава о предлошку функције
Предложак функције започиње кључном речју template
праћеном параметрима предлога унутар којих следи декларација функције.
template T functionName(T parameter1, T parameter2,… ) ( // code )
У горњем коду, T
је доказ шаблон који прихвата различите врсте података ( int
, float
, итд), а је typename
кључна реч.
Када се проследи аргумент типа података functionName()
, преводилац генерише нову верзију functionName()
за дати тип података.
Позивање предлошка функције
Једном када смо прогласили и дефинисали предложак функције, можемо га позвати у друге функције или предлошке (као што је main()
функција) са следећом синтаксом
functionName(parameter1, parameter2,… );
На пример, размотримо шаблон који додаје два броја:
template T add(T num1, T num2) ( return (num1 + num2); )
Тада га можемо позвати у main()
функцији за сабирање int
и double
бројеве.
int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << result2 << endl; return 0; )

Пример: Проналажење апсолутне вредности бројева
#include using namespace std; template T add(T num1, T num2) ( return (num1 + num2); ) int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << "2 + 3 = " << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << "2.2 + 3.3 = " << result2 << endl; return 0; )
Оутпут
2 + 3 = 5 2,2 + 3,3 = 5,5