341
Ассоциативті контейнерлер
Жоғарыда көрсетілгендей, ассоциативті контейнерлер, көбінесе теңдес-
тірілген іздеу бұтақтарының негізінде құрылуының арқасында мəліметтерге
жылдам қол жеткізуді қамтамасыз етеді (контейнердің жүзеге асырылуы емес,
тек оның интерфейсі ғана стандартқа сəйкес анықталады).
Ассоциативті контейнерлердің бес типі бар, олар: сөздіктер (
map
), дубли-
катты сөздіктер (
multimap
), жиындар (
set
), дубликатты жиындар (
multiset
)
жəне биттік жиындар (
bitset
). Сөздіктерді
ассоциативті жиымдар немесе
бейнелер деп те атайды.
Сөздік жұпталған мəндер негізінде құрылады, жұптардың алғашқысы
элементті анықтауға арналған кілт, ал екіншісі – элементтің өзі болып та-
былады. Кілт элементпен ассоциацияланған (байланысқан) деп айтуға бо-
лады, контейнерлердің бұлай аталуы да осыған орай қалыптасқан. Мысалы,
ағылшын-қазақ сөздігінде кілт ретінде ағылшын сөзі, ал элемент ретінде
қазақ сөзі алынады. Қарапайым жиымды да сөздік ретінде қарастыруға бола-
ды, мұндағы кілттің рөлін элементтің нөмірі атқарады. STL кітапханасында
сипатталған сөздіктерде кілт ретінде кездейсоқ типтегі мəн қолданылуы
мүмкін. Ассоциативті контейнерлер
жəне
тақырыптық файлда-
рында сипатталған.
«Кілт–элемент» жұбын сақтау үшін
тақырыптық файлында
сипатталған
pair
шаблоны қолданылады:
template struct pair{
typedef T1 fi rst_type;
typedef T2 second_type;
T1
fi rst;
Достарыңызбен бөлісу: