C++ funksiya shablonlari
Shablonlar C++ tilining kuchli xususiyatlari bo'lib, umumiy dasturlarni yozish imkonini beradi.
Shablon yordamida har xil ma'lumotlar turlari bilan ishlash uchun bitta funksiya yaratishimiz mumkin.
Funksiya shabloni template kalit so'zidan boshlanadi, so'ngra <> ichidagi shablon parametr(lar)idan so'ng funksiya ta'rifi keladi.
template <typename T>
T functionName(T parameter1, T parameter2, ...) {
// kod
}
Yuqoridagi kodda T turli xil ma'lumotlar turlarini ( int , float va boshqalar) qabul qiluvchi shablon argumenti va typename kalit so'zdir.
Ma'lumotlar turining argumenti functionName() ga uzatilganda, kompilyator berilgan ma'lumotlar turi uchun functionName() ning yangi versiyasini yaratadi.
Funksiya shablonini e'lon qilganimiz va aniqlaganimizdan so'ng, biz uni boshqa funksiyalar yoki shablonlarda (masalan, main() funksiyasi) quyidagi sintaksis bilan chaqirishimiz mumkin.
functionName<dataType>(parameter1, parameter2,...);
Misol uchun, ikkita raqam qo'shadigan shablonni ko'rib chiqaylik:
template <typename T>
T add(T num1, T num2) {
return (num1 + num2);
}
Keyin int va double raqamlarini qo'shish uchun uni main() funksiyasida chaqirishimiz mumkin.
#include <iostream>
using namespace std;
int main() {
int result1;
double result2;
// int parametrlari bilan chaqirish
result1 = add<int>(2, 3);
cout << result1 << endl;
// qo'sh parametrlar bilan qo'ng'iroq qilish
result2 = add<double>(2.2, 3.3);
cout << result2 << endl;
return 0;
}
Function Call based on data types

#include <iostream>
using namespace std;
template <typename T>
T add(T num1, T num2) {
return (num1 + num2);
}
int main() {
int result1;
double result2;
// int parametrlari bilan chaqirish
result1 = add<int>(2, 3);
cout << "2 + 3 = " << result1 << endl;
// qo'sh parametrlar bilan qo'ng'iroq qilish
result2 = add<double>(2.2, 3.3);
cout << "2.2 + 3.3 = " << result2 << endl;
return 0;
}
Chiqish
2 + 3 = 5
2.2 + 3.3 = 5.5