Teskari ketma-ketlikning oxiriga teskari iteratorni qaytaradi
3. Iteratorlar
Iteratorlar - bu ko'rsatkich tushunchasining umumlashmasi: ular konteyner elementlariga havola qilinadi. Iteratorlar bilan ishlash uchun kutubxonasiga ulanish zarur.
Barcha konteyner-sinflar uchun iterator turi aniqlanadi, lekin turli xil sinflar uchun turlicha tatbiq qilinadi. Iteratorning asosiy amallari:
- qayta nomlanish: agar p – iterator bo’lsa, u holda *p – iterator havola qilgan ob’ekt qiymati.
- bir iteratorni boshqasiga o’zlashtirish.
- tenglikka va tengsizlikka taqqoslash (== va !=).
- konteyner elementlari bo’ylab inkrement yordamida siljish (p++ va ++p).
Amaliyotda iterator turidagi ob’ektlarni e’lon qilish farq qilganligi sababli, template_name:: shaklidagi ko’rinish maydoni bilan berilishi shart, masalan:
Konteyner elementlarini ko’rib chiqish uchun siklni ishlatish ham maxsus ko’rinishga ega. Agar i – qandaydir iterator bo’lsa, u holda odatdagi shakl for (i = 0; i < n; i++) o’rniga, for (i = first; i != last; i++) kabi qo’llaniladi, bu yerda first – konteynerdagi birinchi elementni ko’rsatuvchi iterator qiymati, last – oxirgi elementdan keyingi tasavvurdagi elementni ko’rsatuvchi iterator qiymati.
Barcha konteyner sinflar uchun first adresini olish uchun begin() va last adresini olish uchun esa end() metodlari (funksiyalari) mavjud.