Mavzuga kirish; Shablonlar nazariyasi; Misol: Umumiy toifa
Download 61.98 Kb.
|
2) 15- ma\'ruza matni
Misol: Umumiy toifa
Qismda umumiy toifali funksiya aniqlanadi. O`tgan semestrda ko`rib chiqilgan 12.8-kodli ro`yxatdagi TanlabSaralash.cpp dasturida double turidagi elementlardan tashkil topgan massivni saralovchi funksiya berilgan edi. Bu yerda o`sha funksiya nusxasi keltirilgan: void tanlabSaralash(double list[], int listHajm) { for (int i = 0; i < listHajm - 1; i++) { // list[i..listHajm-1] dagi minimumni topish double joriyMinimum = list[i]; int joriyMinimumIndeks = i; for (int j = i + 1; j < listHajm; j++) { if (joriyMinimum > list[j]) { joriyMinimum = list[j]; joriyMinimumIndeks = j; } } // list[i] ni list[joriyMinimumIndeks] bilan almashtirish, agar zarur bo`lsa; if (joriyMinimumIndeks != i) { list[joriyMinimumIndeks] = list[i]; list[i] = joriyMinimum; } } } Bu funksiyani int, char, string va hokazo turlardagi qiymatlardan iborat massivlarni saralashga mo`ljallangan yangi funksiya hosil qilish uchun qayta sozlash oson. Bu turlarning har biri uchun saralashni bajarish uchun koddagi double kalit so`zini int, char yoki string kalit so`zlari bilan almashtirish kerak (1- va 6-qator). Bir qancha saralash funksiyalarini yozish o`rniga, shunchaki, barcha turlar uchun o`rinli bo`lgan, bir dona funksiya shablonini yozishimiz mumkin. 1.3-kodli ro`yxatda massiv elementlarini saralash funksiyasi aniqlangan. 1.3-kodli ro`yxat. GenericSort.cpp Download 61.98 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling