Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В ассоциативных контейнерах элементы не выстроены в линейную последовательность.
Они организованы в более сложные структуры, что дает большой выигрыш в скорости поиска. Поиск производится с помощью ключей, обычно представляющих собой одно числовое или строковое значение.
Рассмотрим две основные категории ассоциативных контейнеров в STL: множества и словари.
В множестве (set) хранятся объекты, упорядоченные по некоторому ключу, являющемуся атрибутом самого объекта.
Например, множество может хранить объекты класса Man, упорядоченные в алфавитном порядке по значению ключевого поля name.
Если в множестве хранятся значения одного из встроенных типов,
например, int, то ключом является сам элемент.
Словарь (тар) можно представить себе как своего рода таблицу из двух столбцов, в первом из которых хранятся объекты, содержащие ключи, а во втором — объекты, содержащие значения.
И в множествах, и в словарях все ключи являются уникальными (только одно значение соответствует ключу). Мультимножества (multiset) и мультисловари(multlmap) аналогичны своим родственным контейнерам, но в них одному ключу может соответствовать несколько значений.
Ассоциативные контейнеры имеют много общих методов с последовательными контейнерами. Тем не менее, некоторые методы, а также алгоритмы характерны только для них.
Дата публикования: 2014-11-28; Прочитано: 217 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!