Reja: Iteratorlar. Iteratorlarning toifalari; Iteratotlar-adapterlar



Download 1,96 Mb.
bet1/11
Sana20.03.2022
Hajmi1,96 Mb.
#502177
  1   2   3   4   5   6   7   8   9   10   11
Bog'liq
4- taqdimot

  • PhD: Mallayev O.U.
  • https://t.me/daslabkiAqil

Konteynerlar va iteratorlar

  • container" konteyneri - bu obyektlar bir xil turdagi qiymatlar to'plamini saqlashga moslashtirilgan sinf ("massiv" tushunchasini umumlashtirish). Konteynerning tarkibiga kirish uchun vositani ta'minlaydi. C ++ standart kutubxonasida ushbu kirish moslamalari iterator deb nomlangan "qator elementiga ko'rsatgich" tushunchasini umumlashtirishga asoslangan.
  • Iteratorlar juftligi “range" diapazonini o'rnatadi - iteratorni oldinga siljitish bilan hisoblanadigan qiymatlar ketma-ketligini belgilash, juftlikdagi birinchi iterator birinchi elementdan boshlab, juftlikning ikkinchi iteratori topilgunga qadar, ketma-ketlikning oxirini ko'rsatuvchi va dinamik elementga ishora qilib, xuddi oxirgi elementdan keyin darhol ketma-ketlikda turgandek hisonlash jarayonidir.

Massiv bilan diapazonga misol:

  • char data[] = "Hello, world!";
  • // 7 dan 12 gacha element oralig'i “world" so'zini o'z ichiga oladi.
  • auto begin = data + 7; // Diapazonning boshlanishi bu juftlikning birinchi iteratoridir.
  • auto end = data + 12; // Diapazonning oxiri juftlikdagi ikkinchi iteratordir.
  • assert(end - begin == 5); // Iteratorlar orasidagi masofa == oraliqdagi elementlar soni.
  • // qatorning barcha elementlarini ketma-ket ro'yxatlash.
  • while (begin != end)
  • cout.put(*begin++); // > world

Konteyner tarkibini o’zgartirish

  • Konteynerning ichki tuzilishiga qarab, har qanday ko'rsatgichga tegishli operatsiyalar uning iteratorlarida samarali bajarilishi mumkin emas. Masalan, bog'langan ro'yxatga kirishda raqamli indeks orqali kirish ko'p sonli operatsiyalarni talab qilishi mumkin. Qaytaruvchilar samarasiz ishlarni qo'llab-quvvatlamasligi mumkin. Iteratorlarning xarakterli turlarini ajratib ko'rsatish uchun C ++ standarti "iterator toifalari" ni belgilaydi. U yoki boshqa toifaga tegishli iterator uni qo'llab-quvvatlaydigan operatsiyalar to'plami bilan belgilanadi.
  • Qoidaga ko'ra konteyner tarkibini o'zgartirish uchun iteratordan foydalanish mumkin emas (maxsus adapter iteratorlaridan tashqari).

Download 1,96 Mb.

Do'stlaringiz bilan baham:
  1   2   3   4   5   6   7   8   9   10   11




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