Test gift and xml


Klasslar va ulardan foydalanishга доир мисоллар келтиринг


Download 1.72 Mb.
bet22/34
Sana30.04.2023
Hajmi1.72 Mb.
#1413071
1   ...   18   19   20   21   22   23   24   25   ...   34
Bog'liq
Algaritm umumiy

44. Klasslar va ulardan foydalanishга доир мисоллар келтиринг.

  • Shablon klasslarini o’rganish uchun ham oddiy misollardan foydalanamiz. Yuqoridagi misol uchun yozilgan funksiya kodiga massivning minimum va maksimum elementlarini qidirish funksiyasini qo’shamiz:

struct my_pointer_pair {
tip *first;
tip *second; };

  • Bu yerda ko’rsatkichlar turi qanday bo’ladi? Buni shablon strukturasi asosida quyidagicha tavsiflash mumkin:

template
struct my_pointer_pair {
T *first;
U *second; };

  • Endi kompilyator my_pointer_pair<1-tur,2-tur> uchun mos keluvchi turlarni o’zi generatsiyalaydi. Bu misoldagi ko’rsatkichlar bir xil turga tegishli bo’ladi, lekin biz strukturada ko’rsatkichlar turi har xil bo’ladigan qilib o’zgartirish ham mumkin. Bu boshqa misollar uchun foydali bo’lishi mumkin.

  • int main () {

  • my_pointer_pair obj={new int(10), new double(67.98)}; //my_pointer_pair turiga tegishli ob’ektlarni hosil qilish

  • std::cout<<*obj.first<<' '<<*obj.second<

  • delete obj.first;

  • delete obj.second; }

  • Kompilyator klass shabloni uchun turlarni avtomatik aniqlamaydi, shuning uchun ham uni mustaqil ko’rsatishimiz zarur.

45. To’g’ridan-to’g’ri o’rin almashtirish algoritmi uchun klass yozing va misol yordamida uning ishlishini tushuntirib bering.


46. Qidiruv algoritmining klasslar yordamida ifodalanishini misollar yordamida tushuntirib bering.
47. Shablonlarning standart kutubxonasi va undan dastur yozishda foydalanishga misollar keltiring?

  • Kompilyatorlar tarkibida shablonlar kutubxonasini taqdim etadi. (Standart Template Library). Bu kutubxona bir qancha funksiya va klass shablonlaridan tashkil topgan.

  • Masalan, ikki bog’lamli ro’yxat klassi (list), “juft” klassi (pair), ikki o’zgaruvchining o’rnini almashtirish funktsiyasi shabloni (swap), saralash funksiyalari, massivni dinamik kengaytirish funksiyasi (vector) va h.k. Bulardan dasturlashda to’liq foydalanishingiz mumkin.


Download 1.72 Mb.

Do'stlaringiz bilan baham:
1   ...   18   19   20   21   22   23   24   25   ...   34




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