Amudaryo muhandislik texnikumi


-Mavzu: Funktsiya va sinf shablonlari



Download 2,68 Mb.
bet17/32
Sana21.09.2022
Hajmi2,68 Mb.
#849794
1   ...   13   14   15   16   17   18   19   20   ...   32
Bog'liq
Ob\'ektga yo’naltirilgan va tarmoq dasturlash

4-Mavzu: Funktsiya va sinf shablonlari
Reja:
1. Funktsiya
2. Sinf shablonlari
Zamonaviy C ++ ni dasturlash naqshlari nima ekanligini bilmasdan tushunish mumkin emas. Tilning bu xususiyati optimallashtirish va kodni qayta ishlatish uchun keng imkoniyatlar ochadi. Ushbu maqolada biz nima ekanligini va barchasi qanday ishlashini tushunishga harakat qilamiz.

C ++ tilidagi shablon mexanizmi har xil turdagi algoritmni birlashtirish masalasini hal qilishga imkon beradi: butun sonlar uchun haqiqiy funktsiyalarni yozishning hojati yo'q - aniq bo'lmagan umumiy algoritm tuzish kifoya. faqat umumiy xususiyatlarga asoslangan ma'lumotlar turiga bog'liq. Masalan, saralash algoritmi butun sonlar bilan ham, avtomobil ob'ektlari bilan ham ishlashi mumkin.

Funktsiya shablonlari va sinf shablonlari mavjud.

Funktsiya andozalari - bu har xil turdagi ob'ektlarni chaqirish mumkin bo'lgan funktsiyalarning umumiy tavsifi. Boshqacha qilib aytganda, funktsiya shabloni (shablon funktsiyasi, umumiy funktsiya) har xil funktsiyalar oilasi (yoki algoritm tavsifi). Ta'rif bo'yicha funktsiya shabloni oddiy funktsiyaga o'xshaydi: farq shundaki, ba'zi elementlar aniqlanmagan (turlari, doimiylari) va parametrlangan.

Sinf shablonlari -bu atributlar va turdagi operatsiyalarni parametrlash mumkin bo'lgan foydalanuvchi tomonidan aniqlanadigan umumiy tavsif. Ular konstruktorlar bo'lib, ular yordamida haqiqiy sinflar parametrlar o'rniga maxsus dalillar bilan almashtirilishi mumkin.

Keling, oddiy misolni ko'rib chiqaylik. Aytaylik, bizda ikkita int o'zgaruvchining qiymatini almashtiradigan funksiya bor:


#include


void my_swap ( int & first , int & second )
{
int temp ( first ) ;
first = second ;
second = temp ;
}


int main ()
{
int a = 5 ;
int b = 10 ;
std::cout << a << " " << b << std::endl ;
my_swap ( a , b ) ;
std::cout << a << " " << b << std::endl ;
}
Keling, aytaylik, bizda ham asosiy funktsiyada ikki xil turdagi ikkita o'zgaruvchi bor, ularni ham almashtirish kerak. Int tipidagi ikkita o'zgaruvchining qiymatlarini almashtirish funktsiyasi biz uchun ishlamaydi. Keling, dubl uchun funktsiyani yozaylik:

Download 2,68 Mb.

Do'stlaringiz bilan baham:
1   ...   13   14   15   16   17   18   19   20   ...   32




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish