Šablóna funkcie C ++ (s príkladom)

Obsah

V tomto tutoriále sa pomocou príkladov dozvieme o šablónach funkcií v C ++.

Šablóny sú výkonné funkcie jazyka C ++, ktoré nám umožňujú písať všeobecné programy.

Môžeme vytvoriť jednu funkciu na prácu s rôznymi typmi údajov pomocou šablóny.

Deklarácia šablóny funkcie

Šablóna funkcie začína kľúčovým slovom, za templatektorým nasledujú parametre šablóny, za ktorými nasleduje vyhlásenie funkcie.

 template T functionName(T parameter1, T parameter2,… ) ( // code )

Vo vyššie uvedenom kódu, Tje šablóna argument, ktorý prijíma rôzne dátové typy ( int, floatatď), a typenameje kľúčové slovo.

Keď sa predá argument dátového typu functionName(), kompilátor vygeneruje novú verziu functionName()pre daný dátový typ.

Volanie šablóny funkcie

Keď sme deklarovali a definovali šablónu funkcie, môžeme ju nazvať v iných funkciách alebo šablónach (napríklad vo main()funkcii) s nasledujúcou syntaxou

 functionName(parameter1, parameter2,… );

Uvažujme napríklad o šablóne, ktorá pridáva dve čísla:

 template T add(T num1, T num2) ( return (num1 + num2); )

Potom to môžeme nazvať main()funkciou sčítania inta doublečíslovania.

 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; ) 
Volanie funkcie na základe dátových typov

Príklad: Nájdenie absolútnej hodnoty čísel

 #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; )

Výkon

 2 + 3 = 5 2,2 + 3,3 = 5,5

Zaujímavé články...