У овом упутству ћемо научити о предлошцима функција у Ц ++ уз помоћ примера.
Предлошци су моћне карактеристике Ц ++-а који нам омогућава писање генеричких програма.
Помоћу шаблона можемо створити једну функцију за рад са различитим врстама података.
Изјава о предлошку функције
Предложак функције започиње кључном речју 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








