|
Funksiyalarni yaratish va ulardan foydalanish. Reja
| bet | 3/7 | Sana | 18.01.2024 | Hajmi | 124,09 Kb. | | #140451 |
Bog'liq Funksiyalarni yaratish va ulardan foydalanish
template<> void swapargs(int &a, int &b)
{
int temp; temp = a; a = b;
b = temp;
cout << " int tipi uchun maxsus swapargs funksiyasi.\n";
}
Funksiya shablonini Override qilish yangi usuli
Funksiya shablonini overload qilish.
#include using namespace std;
// f() funksiya shablonining birinchi turi.
template void f(X a)
{
cout << "Inside f(X a)\n";
}
// f() funksiya shablonining ikkinchi turi.
template void f(X a, Y b)
{
cout << "Inside f(X a, Y b)\n";
}
int main()
{
f(10); // calls f(X)
f(10, 20); // calls f(X, Y)
return 0;
}
// Oddiy funksiyalardek, funksiya shablonini ham overload qilish mumkin.
-
Umumiy funksiyalar funksiya overloadining o’rnini bosishi mumkin.
-
Lekin bu yerda bitta kamchilik mavjud.
-
Biz oddiy funksiyani overload qilganimizda, har xil ma’lumotlar tipi uchun
funksiya tanasini har xil qilib yozishimiz mumkin.
-
Lekin umumiy funksiyada har xil tip qabul qila olgani bilan funksiya tanasi har doim bir xil bo’ladi, chunki bitta funksiyaga murojaat bo’ladi.
-
Faqatgina ma’lumotlar tipi har xil bo’la oladi.
Umumiy sinflar (sinf shabloni)
template TOIFA> class sinf_nomi{
...
}
Sinf shablonini e’lon qilishning umumiy formasi:
|
| |