STLtushunchasi, ma'lum ma'noda, ob'ektga yo'naltirilgan dasturlashning asl tamoyillariga zid keladi: STL ma'lumotlar va algoritmlarni birlashtirish o'rniga bir-biridan ajratib turadi. Shunga qaramay, bunday qarorni qabul qilish uchun juda kuchli dalillar mavjud. Umuman aytganda, har qanday konteyner har qanday algoritm bilan birlashtirilishi mumkin, shuning uchun natija juda moslashuvchan, ammo juda ixcham tuzilishga ega.
STL-ning eng muhim xususiyatlari qatoriga barcha komponentlarning o'zboshimchalik turlari bilan ishlashi kiradi. Nomidan ko'rinib turibdiki (Standart shablonlar kutubxonasi), barcha komponentlar har qanday turga mos shablon sifatida shakllantiriladi (agar u kerakli operatsiyalarni bajarishi mumkin bo'lsa). STL - bu yagona dasturlash kontseptsiyasining yaxshi namunasidir . Konteynerlar va algoritmlar navbati bilan ixtiyoriy turlari va sinflari uchun birlashtirilgan.
Biroq, STL tarkibida yanada ko'p qirrali komponentlar mavjud. Foydalanish moslashtirgichlardan va vazifasi ob'ektlarni (yoki funktorlar), dasturchi, ko'paytirish cheklash va maxsus maqsadlar uchun algoritmlarni va interfeyslarni sozlashingiz mumkin.
Keyingi bosqichda biz konteynerlarni ko'rib chiqamiz .
Konteyner sinflari (konteynerlar) buyumlar to'plamini boshqaradi. Dasturchining turli xil ehtiyojlari uchun STL har xil turdagi konteynerlarni taqdim etadi (1-rasm).
Shakl.1. STL konteyner turlari
Idishlar ikki toifaga bo'linadi.
Ketma-ket konteynerlar buyurtma qilingan to'plamlar bo'lib, unda har bir buyum ma'lum bir pozitsiyani egallaydi. Lavozim qo'shilish vaqti va joyiga bog'liq, ammo elementning qiymati bilan bog'liq emas. Masalan, agar siz mavjud to'plamning oxirigacha ketma-ket oltita elementni birlashtirsangiz, ular kiritilgan tartibda kuzatiladi. STL ketma-ket uchta standart konteynerdan iborat: vektor (vektor) , dek (dekabr) va ro'yxat (ro'yxat) .