Šioje pamokoje su pavyzdžių pagalba sužinosime apie funkcijų šablonus C ++.
Šablonai yra galingos C ++ funkcijos, leidžiančios mums rašyti bendras programas.
Mes galime sukurti vieną funkciją, kad galėtume dirbti su skirtingais duomenų tipais, naudodami šabloną.
Funkcijos šablono deklaracija
Funkcijos šablonas prasideda raktiniu žodžiu, template
po kurio yra šablono parametras (-ai) , po kurio pateikiama funkcijos deklaracija.
template T functionName(T parameter1, T parameter2,… ) ( // code )
Ankstesniame kode T
yra šablono argumentas, kuris priima skirtingus duomenų tipus ( int
, float
ir tt) ir typename
yra raktinis žodis.
Kai duomenų tipo argumentas perduodamas functionName()
, kompiliatorius sugeneruoja naują functionName()
nurodyto tipo duomenų versiją .
Skambinimas funkcijos šablonui
Deklaravę ir apibrėžę funkcijos šabloną, galime jį iškviesti kitose funkcijose ar šablonuose (pvz., main()
Funkcija) naudodami šią sintaksę
functionName(parameter1, parameter2,… );
Pvz., Apsvarstykime šabloną, kuriame pridedami du skaičiai:
template T add(T num1, T num2) ( return (num1 + num2); )
Tada galime jį paskambinti main()
funkcijoje, kad pridėtume int
ir double
skaičiuotume.
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; )

Pavyzdys: absoliučios skaičių vertės radimas
#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; )
Rezultatas
2 + 3 = 5 2,2 + 3,3 = 5,5