Assotsiativ konteynerlar haqida; set va multiset sinflari; map va multimap siflari




Download 2.03 Mb.
bet2/4
Sana16.06.2022
Hajmi2.03 Mb.
#23803
1   2   3   4
Bog'liq
3-ma\'ruza. Assotsiativ va tartiblanmagan konteynerlar
science-subject-for-elementary-3rd-grade-the-water-cycle
Set uchun aniqlangan turlar:





Nomi

Izoh

1

allocator_type

To'plam obyekti uchun ajratuvchi sinfini ifodalovchi tur.

2

const_iterator

To'plamning const elementini o'qiy oladigan ikki tomonli iteratorni ta'minlaydigan tur.

3

const_pointer

To'plamdagi const elementiga ko'rsatgichni ta'minlaydigan tur.

4

const_reference

Const operatsiyalarini o'qish va bajarish uchun to'plamda saqlanadigan const elementiga mos yozuvlar beradigan tur.

5

const_reverse _iterator

To'plamdagi istalgan konst elementni o'qiy oladigan ikki tomonlama iteratorni ta'minlovchi tur.

6

difference_type

Iteratorlar tomonidan ko'rsatilgan elementlar orasidagi diapazonda to'plamdagi elementlar sonining vakili sifatida foydalanish uchun mos bo'lgan imzolangan butun son turi.

7

iterator

To'plamdagi istalgan elementni o'qishi yoki o'zgartirishi mumkin bo'lgan ikki tomonli iteratorni ta'minlovchi tur.

8

key_compare

To'plamdagi ikkita elementning nisbiy tartibini aniqlash uchun ikkita xil elementlarni taqqoslashi mumkin bo'lgan funktsiya obyekti bilan ta'minlaydigan tur.

9

key_type

Saralash kalitiga xos bo'lgan qobiliyatlari jihatidan to'plam sifatida saqlangan obyektni tavsiflovchi tur.

10

pointer

Bir to'plamdagi elementga ko'rsatgichni ta'minlaydigan tur.

11

reference

To'plamda saqlanadigan elementga mos yozuvlar beradigan tur.

12

reverse_iterator

Inverted to'plamda elementni o'qiy oladigan yoki o'zgartiradigan ikki tomonlama iteratorni ta'minlaydigan tur.

13

size_type

To'plamdagi elementlar sonini ifodalashi mumkin bo'lgan imzolanmagan butun son turi.

14

value_compare

To'plamdagi ularning nisbiy tartibini aniqlash uchun ikkita elementni taqqoslashi mumkin bo'lgan funktsiya obyekti bilan ta'minlaydigan tur.

15

value_type

To'plam elementi sifatida saqlanadigan ob'ektni qiymatga xos bo'lgan qobiliyatlari nuqtai nazaridan tavsiflaydigan tur.

Set uchun aniqlangan funksiyalar:



Nomi

Izoh


begin

To'plamdagi birinchi elementga kiradigan iteratorni qaytaradi.


cbegin

To'plamdagi birinchi elementga tegishli bo'lgan konst-iteratorni qaytaradi.


cend

To'plamdagi oxirgi elementdan keyingi joyga ishora qiluvchi const iteratorini qaytaradi.


clear

Bir to'plamdagi barcha elementlarni o'chiradi.


count

Kalitlari parametr tomonidan berilgan kalitga mos keladigan to'plamdagi elementlar sonini qaytaradi.


crbegin

Invertirlangan to'plamdagi birinchi elementga kiradigan konst-iteratorni qaytaradi.


crend

Inverted to'plamdagi oxirgi elementdan keyin joylashgan joyni bildiradigan konst-iteratorni qaytaradi.


emplace

To'plamga element joylashtiradi.


emplace_hint

Joylashtirishga ishora bilan to'plamga element kiritadi.


empty

To'plam bo'sh yoki yo'qligini tekshiradi.


end

To'plamdagi oxirgi elementdan keyingi joyga ishora qiluvchi iteratorni qaytaradi.


equal_range

Belgilangan kalitdan kattaroq kalit bilan to'plamdagi birinchi elementga va berilgan kalitdan kattaroq yoki unga teng keladigan to'plamdagi birinchi elementga mos ravishda iterator juftligini qaytaradi.


erase

Belgilangan pozitsiyalardan biron bir element yoki elementlar qatorini o’chiradi yoki berilgan kalitga mos keladigan elementlarni o’chiradi.


find

Belgilangan kalitga teng keladigan kalit bilan to'plamdagi elementning joylashuviga kiradigan iteratorni qaytaradi.


get_allocator

To'plamni yaratish uchun foydalaniladigan ajratuvchi ob'ektining nusxasini qaytaradi.


insert

To’plamga elementlar yoki elementlar qatorini qo'shadi.


key_comp

To'plamda elementlarni tartibga solish uchun ishlatiladigan taqqoslash obyektining nusxasini oladi.


lower_bound

Belgilangan kalitdan kattaroq yoki unga teng bo'lgan kalit bilan to'plamdagi birinchi elementga ishora qiluvchi iteratorni qaytaradi.


max_size

To'plamning maksimal uzunligini qaytaradi.


rbegin

Inverter to'plamdagi birinchi elementga kiradigan iteratorni qaytaradi.


rend

Invertirlangan to'plamdagi oxirgi elementdan keyingi joyga ishora qiluvchi iteratorni qaytaradi.


size

To'plamdagi elementlar sonini qaytaradi.


swap

Ikki to'plam elementlarni almashtiradi.


upper_bound

Belgilangan kalitdan kattaroq kalit bilan to'plamdagi birinchi elementga ishora qiluvchi iteratorni qaytaradi.


value_comp

To'plamdagi elementlarning qiymatlarini tartibga solish uchun ishlatiladigan taqqoslash obyektining nusxasini oladi.



begin() funksiyasi:
Qaytish qiymati "boshlash" const_iterator-ga tayinlangan bo'lsa, u holda belgilangan obyektdagi elementlarni o'zgartirish mumkin emas. Agar boshlang'ichning qaytarilish qiymati iteratorga tayinlangan bo'lsa, unda yig'ish obyektidagi elementlar o'zgarishi mumkin.




cbegin() funksiyasi:
To'plamdagi birinchi elementga tegishli bo'lgan const-iterator ni qaytaradi.
const_iterator cbegin() const;

auto i1 = Container.begin(); // i1 is Container::iterator
auto i2 = Container.cbegin(); // i2 is Container::const_iterator
cend() funksiyasi:
Maydondagi oxirgi elementdan so'ng darhol manzilga kiradigan doimiy iteratorni qaytaradi.
const_iterator cend() const;

auto i1 = Container.end();
// i1 is Container::iterator
auto i2 = Container.cend();
// i2 is Container::const_iterator


clear() funksiyasi:






const_reference() funksiyasi:
Const operatsiyalarini o'qish va bajarish uchun to'plamda saqlanadigan const elementiga mos yozuvlar beradigan tur.
typedef typename allocator_type::const_reference const_reference;








count() funksiyasi:


crbegin() funksiyasi:


emplace() funksiyasi:


emplace_hint() funksiyasi:
Yaratilgan elementni joyiga qo'yish (nusxalash yoki ko'chirish ishlari amalga oshirilmaydi).
template
iterator emplace_hint(
const_iterator where,
Args&&... args);



find() funksiyasi:
Belgilangan pozitsiyalardan biron bir element yoki elementlar qatorini yoki berilgan kalitga mos keladigan elementlarni topadi.
iterator find(const Key& key);
const_iterator find(
const Key& key) const;


allocator_type turi:



  • To'plam obyekti uchun tarqatish sinfini ifodalovchi tur.

  • typedef Allocator allocator_type;

key_comp() funksiyasi:
To'plamdagi elementlarni tartibga solish uchun ishlatiladigan taqqoslash obyektining nusxasini oladi.
bool-operator () (key const & _xVal, key const & _yVal);
Esda tutingki, key_compare va value_compare ikkalasi ham Traits shablonlari parametrining sinonimidir. Ikkala turi ham bir xil bo'lgan to'siq va multiset sinflari uchun taqdim etiladi, ular map da va multimap sinflarida mosligi uchun farq qiladi.


multiset sinfi
multiset - bir xil kalitlar bilan ishlovchi turlar va funksiyalarga ega konteynerdir. set sinfida mavjud barcha barcha funksiyalar multimap sinfi uchun ham qo’llaniladi. Faqat mavjud elementlarga murojaat qilishda funksiya sintaksisi o’zgarishi mumkin.


set va multiset sinflaridan foydalanib, amaliy dasturlar yaratish
Masalaning qo’yilishi:
set va multiset asosida yaratilgan to’plam elementlarini set va mutiset ning maxsus funksiyalari yordamida qayta ishlash.
Masala:
Berilgan int turidagi to’plam qiymatlari 2- to’plamda nechta marta qatnashganligini aniqlovchi va ularni ekranga chiqaruvchi dastur tuzing. Ikkala to’plamdan ham bir xil qiymatli elemetlar o’chirilib, saralangan to’plam hosil qilinsin hamda uning qiymatlari ekranga chiqarilsin.
Masalani yechish g‘oyasi:
set konteyneri to’plami yaratiladi. list ning insert() iteratoridan foydalanib, A to’plamga qiymatlar o’zlashtiriladi. Z to’plamga esa A to’plam qiymatlarini juftlari yoziladi.


set va multiset sinflaridan foydalanib, amaliy dasturlar yaratish


Ishning maqsadi: C++ dasturlash tilida set va multiset sinflari va uning metodlaridan foydalanish ko’nikmalarini egallsh.

Download 2.03 Mb.
1   2   3   4




Download 2.03 Mb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Assotsiativ konteynerlar haqida; set va multiset sinflari; map va multimap siflari

Download 2.03 Mb.