Reja: Iteratorlar. Iteratorlarning toifalari; Iteratotlar-adapterlar



Download 1,97 Mb.
bet7/11
Sana12.04.2022
Hajmi1,97 Mb.
#547204
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
4- taqdimot

Iteratorlar - adapterlar

  • Oqimni yaratish paytida biriktirilgan istream_iterator obyekti keyingi qiymatni o'qish imkoni bo'lmaganda o'chiriladi va odatiy konstruktor tomonidan yaratilgan obyektga teng bo'ladi, u oqimdan o'qilgan qiymatlar ketma-ketligining oxirini belgilaydigan iterator vazifasini bajaradi.
  • back_inserter va istream_iterator obyektlarini birgalikda ishlatish mumkin, masalan, bo'sh joy raqamlari bilan ajratilgan ixtiyoriy uzunlikdagi ketma-ketlikni o'qishni tashkil qilish uchun. Masalan, o'qish cin oqimidan xs konteynerigacha amalga oshiriladi, u tur vektor bo'lishi mumkin <int> (bu yerda quyida tasvirlangan standart algoritm mavjud):
  • copy(istream_iterator(cin),
  • istream_iterator(), back_inserter(xs));

Iteratorlar - adapterlar

  • Chiqish oqimi iterator sinfi ostream_iterator > bu basic_ostream obyektiga (xususan, ostream) yozish uchun mo'ljallangan chiqish iteratoridir. Chiqish oqimidagi ko'rsatkichga qo'shimcha ravishda, iterator har bir yozuvdan keyin ko'rsatiladigan CharT * turidagi ko'rsatgichni ajratuvchi satrga saqlaydi (agar ko'rsatgich nolga teng bo'lsa). b oqimida vergul bilan ajratilgan x sonlari ketma-ketligini chiqaring:
  • copy(xs.begin(), xs.end(),
  • ostream_iterator(cout, ", "));
  • E'tibor bering, vergul istalgan bo'lishi mumkin bo'lgan oxirgi raqam chop etilganidan keyin qo'yiladi. Bunday holda, oxirgi element alohida murojaatda ko'rsatilishi kerak.

Standart konteynerlar

  • Standart konteynerlar ikkita(2) katta guruhga bo'lish mumkin: chiziqli va assotsiativ. O'z navbatida, chiziqli konteynerlarni bog'langan ro'yxatlarga (forward_list va list) va tasodifiy kirish konteynerlariga (deque, vektor va array) bo'lish mumkin.
  • Assotsiativ konteynerlar sakkizta(8) konteyner bilan ifodalanadi, ular quyidagi variantlarning kombinatsiyasidir (qavs ichida tegishli standart sinflarning nomlaridan iborat): to'plam (*set) yoki lug'at (*map), elementlarning takrorlanishiga imkon beradigan (*multi*) yoki ruxsat berilmagan, buyurtma qilingan yoki tartibsiz (unordered*).
  • Barcha konteynerlarda ichkariga joylashtirilgan iterator va const_iterator turlari mavjud bo'lib, ular mos ravishda o'qish va yozish uchun o'qish iteratorlarini belgilaydi. Konteynerning tarkibini o'z ichiga olgan iteratorlarning qatorini begin va end funktsiyalari (o'qish va yozish uchun iterator), shuningdek cbegin va cend (o'qish uchun const_iterator) yordamida olish mumkin. Ikki tomonlama iterator konteynerlari, shuningdek, reverslar uchun rbegin, rend, crbegin va crend a'zolarining funktsiyalarini ta'minlaydi.

Download 1,97 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