Множество с дубликатами (Multiset)
Множество с дубликатами (Multiset)
multiset - это ассоциативный контейнер, который поддерживает равные ключи (возможно, содержит множественные копии того же самого значения ключа) и обеспечивает быстрый поиск ключей.
template ‹class Key, class Compare = less‹Key›, template ‹class U› class Allocator = allocator›
class multiset {
public:
// typedefs:
typedef Key key_type;
typedef Key value_type;
typedef Allocator‹Key›::pointer pointer;
typedef Aliocator‹Key›::reference reference;
typedef Allocator‹Key›::const_reference const_reference;
typedef Compare key_compare;
typedef Compare value_compare;
typedef iterator;
typedef iterator const_iterator;
typedef size_type;
typedef difference_type;
typedef reverse_iterator;
typedef const_reverse_iterator;
// allocation/deallocation:
multiset(const Compare& comp = Compare());
template ‹class InputIterator›
multiset(InputIterator first, InputIterator last, const Compare& comp = Compare());
multiset(const multiset‹Key, Compare, Allocator›& x);
~multiset();
multiset‹Key, Compare, Allocator›& operator=(const multiset‹Key, Compare, Allocator›& x);
void swap(multiset‹Key, Compare, Allocator›& x);
// accessors:
key_compare key_comp() const;
value_compare value_comp() const;
iterator begin() const;
iterator end() const;
reverse_iterator rbegin();
reverse_iterator rend();
bool empty() const;
size_type size() const;
size_type max_size() const;
// insert/erase:
iterator insert(const value_type& x);
iterator insert(iterator position, const value_type& x);
template ‹class InputIterator›
void insert(InputIterator first, InputIterator last);
void erase(iterator position);
size_type erase(const key_type& x);
void erase(iterator first, iterator last);
// multiset operations:
iterator find(const key_type& x) const;
size_type count(const key_type& x) const;
iterator lower_bound(const key_type& x) const;
iterator upper_bound(const key_type& x) const;
pair‹iterator, iterator› equal_range(const key_type& x) const;
};
template ‹class Key, class Compare, class Allocator›
bool operator==(const multiset‹Key, Compare, Allocator›& x, const multiset‹Key, Compare, Allocator›& y);
template ‹class Key, class Compare, class Allocator›
bool operator‹(const multiset‹Key, Compare, Allocator›& x, const multiset‹Key, Compare, Allocator›& y);
iterator - постоянный двунаправленный итератор, указывающий на const value_type. Точный тип зависит от реализации и определяется в Allocator.
сonst_iterator - тот же самый тип, что и iterator.
size_type - целочисленный тип без знака. Точный тип зависит от реализации и определяется в Allocator.
difference_type - целочисленный тип со знаком. Точный тип зависит от реализации и определяется в Allocator.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Множество большого-тета
Множество большого-тета Когда говорят об обозначении большого-О, то чаще всего имеют в виду то, что Дональд Кнут (Donald Knuth) описывал с помощью обозначения "большого-тета". Обозначение "большого-О" соответствует верхней границе. Например, число 7 — это верхняя граница числа 6,
5.25 Множество адресов для одного интерфейса
5.25 Множество адресов для одного интерфейса Некоторые производители маршрутизаторов предусматривают возможность присваивать несколько IP-адресов одному интерфейсу маршрутизатора. Для чего же это нужно? Несколько адресов подсетей могут потребоваться, во-первых, в
15.5 Работа с дубликатами запросов RPC
15.5 Работа с дубликатами запросов RPC Если служба основана на протоколе TCP, запросы и ответы будут доставляться надежно. TCP берет на себя обеспечение целостности доставляемых данных.Если RPC базируется на UDP, то, в зависимости от требований конкретного приложения, клиент и
Ссылки на множество внешних компоновочных блоков
Ссылки на множество внешних компоновочных блоков В связи с рассматриваемой темой возникает следующий вопрос: "Что делать, если при использовании csc.exe нужно сослаться на множество внешних компоновочных блоков?" Просто перечислить все компоновочные блоки, используя в
Совет 22. Избегайте изменения ключа «на месте» в контейнерах set и multiset
Совет 22. Избегайте изменения ключа «на месте» в контейнерах set и multiset Понять смысл этого совета нетрудно. Контейнеры set/multiset, как и все стандартные ассоциативные контейнеры, хранят свои элементы в отсортированном порядке, и правильное поведение этих контейнеров зависит
Множество (Set)
Множество (Set) set - это ассоциативный контейнер, который поддерживает уникальные ключи (не содержит ключи с одинаковыми значениями) и обеспечивает быстрый поиск ключей.template ‹class Key, class Compare = less‹Key›, template ‹class U› class Allocator = allocator›class set {public: // typedefs: typedef Key key_type; typedef Key
Словарь с дубликатами (Multimар)
Словарь с дубликатами (Multimар) multimар - ассоциативный контейнер, который поддерживает равные ключи (возможно, содержит множественные копии того же самого значения ключа) и обеспечивает быстрый поиск значений другого типа T, связанных с ключами.template ‹class Key, class T, class Compare =
6.15. Контейнеры multimap и multiset
6.15. Контейнеры multimap и multiset Контейнеры map и set не допускают повторяющихся значений ключей, а multimap (мультиотображение) и multiset (мультимножество) позволяют сохранять ключи с дублирующимися значениями. Например, в телефонном справочнике может понадобиться отдельный
Множество пользователей и параллельность
Множество пользователей и параллельность СУБД разработана для того, чтобы обеспечить работу множества пользователей с образами хранимых данных и, чтобы можно было использовать изменяющие запросы, которые могут влиять на работу других пользователей. В этой ситуации
Множество привилегий и множество получателей привилегий
Множество привилегий и множество получателей привилегий Есть возможность предоставлять несколько привилегий в одном операторе и предоставлять одну или более привилегий множеству пользователей или объектов.Множество привилегийДля предоставления получателю
Множество узлов (node-set)
Множество узлов (node-set) Несмотря на то, что XSLT оперирует логической моделью XML-документа как деревом с узлами, в XSLT нет типа данных, который соответствовал бы одному узлу. Вместо этого используется гораздо более мощный и гибкий тип данных, называемый множеством узлов (англ.
У11.11 Модуль "множество"
У11.11 Модуль "множество" Напишите класс, реализующий множество элементов произвольного типа со стандартными операциями: проверка принадлежности, добавление нового элемента, объединение, пересечение и другими. Не забудьте включить подходящие утверждения. Приемлема любая