Nazorat uchun savollar
1. Istisnolarni nima uchun generatsiya va qayta ishlash kerak?
2. Istisno generatsiyasi sintaksisini keltiring.
3. Istisnoni qayta ishlash sintaksisini keltiring.
4. Istisnolar bilan qanday operatorlar bog‘liq?
5. Istisnoni generatsiya qiluvchi funksiya sintaksisini keltiring.
105
13 bob. STRANDART SHABLON SINFLAR BIBLIOTEKASI
13.1. STL tarkibi. Asosiy konteynerlar
Biblioteka yadrosi uchta elementdan iborat: konteynerlar, algoritmlar va
iteratorlar. Konteynerlar (containers) – bu boshqa elementlarni saqlovchi obyektlar.
Masalan, vektor, chiziqli ro‘yxat, to‘plam. Assotsiativ konteynerlar (associative
containers) kalitlar yordamida ularda saqlanadigan qiymatlarni tezkor olish imkonini
yaratadi. Har bir sinf – konteynerida ular bilan ishlash uchun mo‘ljallangan
funksiyalar to‘plami aniqlangan. Masalan, ruyxat elementlarni kiritish, chiqarish, va
qo‘shish funksiyalarni o‘z ichiga oladi. Algoritmlar (algorithms) konteyner
ichidagilar ustidan operatsiyalar bajaradi. Konteyner ichidagilarni initsializatsiyalash,
qidirish, saralash va almashtirish uchun algoritmlar mavjud. Ko‘p algoritmlar
konteyner ichidagi elementlarni chiziqi ro‘yxatini ifodalaydovchi ketma-ketlik
(sequence) bilan ishlash uchun mo‘ljallangan. Iteratorlar (iterators) – bu konteynerga
nisbatan ko‘rsatkich sifatida bo‘lgan obyektlar. Ular massiv elementlariga ruxsat
oluvchi ko‘rsatkichlar kabi, konteyner ichidagiga ruxsat olish imkoni beradi.
vector
dinamk massiv
list chiziqli ro‘yxat
deque
ikki tarafli dvustoronnyaya tartib
set
to‘plam
multiset har bir elementi noyob bo‘lishi shart emas to‘plam
map
kalit/ qiymat juftlikni saqlash uchun assotsiativ ro‘yxat.
Bunda har bir kalit bitta qiymat bilan bog‘langan.
multimap
har bir kalit bilan ikkita yoki ko‘proq qiymatlar
bog‘langan
stack stek
queue
tartib
priority_queue birinchi o‘rindagi tartib
|