C ++ funkcijos šablonas (su pavyzdžiu)

Turinys

Š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, templatepo kurio yra šablono parametras (-ai) , po kurio pateikiama funkcijos deklaracija.

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

Ankstesniame kode Tyra šablono argumentas, kuris priima skirtingus duomenų tipus ( int, floatir tt) ir typenameyra 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 intir doubleskaič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; ) 
Funkcijos iškvietimas pagal duomenų tipus

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

Įdomios straipsniai...