Словарь (Map)
Словарь (Map)
map - ассоциативный контейнер, который поддерживает уникальные ключи (не содержит ключи с одинаковыми значениями) и обеспечивает быстрый поиск значений другого типа T, связанных с ключами.
template ‹class Key, class T, class Compare = less‹Key›, template ‹class U› class Allocator = allocator›
class map {
public:
// typedefs:
typedef Key key_type;
typedef pair‹const Key, T› value_type;
typedef Compare key_compare;
class value_compare : public binary_function‹value_type, value_type, bool› {
friend class map;
protected:
Compare comp;
value_compare(Compare c): comp(c) {}
public:
bool operator()(const value_type& x, const value_type& y) {
return comp(x.first, y.first);
}
};
typedef iterator;
typedef const_iterator;
typedef Allocator‹value_type›::pointer pointer;
typedef Allocator‹value_type›::reference reference;
typedef Allocator‹value_type›::const_reference const_reference;
typedef size_type;
typedef difference_type;
typedef reverse_iterator;
typedef const_reverse_iterator;
// allocation/deallocation:
map(const Compare& comp = Compare());
template ‹class InputIterator›
map(InputIterator first, InputIterator last, const Compare& comp = Compare());
map(const map‹Key, T, Compare, Allocator›& x);
~map();
map‹Key, T, Compare, Allocator›& operator=(const map‹Key, T, Compare, Allocator›& x);
void swap(map‹Key, T, Compare, Allocator›& x);
// accessors:
key_compare key_comp() const;
value_compare value_comp() const;
iterator begin();
const_iterator begin() const;
iterator end();
const_iterator end() const;
reverse_iterator rbegin();
const_reverse_iterator rbegin();
reverse_iterator rend();
const_reverse_iterator rend();
bool empty() const;
size_type size() const;
size_type max_size() const;
Allocator‹T›::reference operator[](const key_type& x);
// insert/erase:
pair‹iterator, bool› 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);
// map operations:
iterator find(const key_type& x);
const_iterator find(const key_type& x) const;
size_type count(const key_type& x) const;
iterator lower_bound(const key_type& x);
const_iterator lower_bound(const key_type& x) const;
iterator upper_bound(const key_type& x);
const_iterator upper_bound(const key_type& x) const;
pair‹iterator, iterator› equal_range(const key_type& x);
pair‹const_iterator, const_iterator› equal_range(const key_type& x)const;
};
template ‹class Key, class T, class Compare, class Allocator›
bool operator==(const map‹Key, T, Compare, Allocator›& x, const map‹Key, T, Compare, Allocator›& y);
template ‹class Key, class T, class Compare, class Allocator›
bool operator‹(const map‹Key, T, Compare, Allocator›& x, const map‹Key, T, Compare, Allocator›& y);
iterator - двунаправленный итератор, указывающий на value_type. Точный тип зависит от реализации и определяется в Allocator.
const_iterator - постоянный двунаправленный итератор, указывающий на const value_type. Точный тип зависит от реализации и определяется в Allocator. Гарантируется, что имеется конструктор для const_iterator из iterator.
size_type - целочисленный тип без знака. Точный тип зависит от реализации и определяется в Allocator.
difference_type - целочисленный тип со знаком. Точный тип зависит от реализации и определяется в Allocator.
В дополнение к стандартному набору методов ассоциативных контейнеров, map обеспечивает операцию Allocator::reference operator[](const key_type&). Для словаря m и ключа k запись m[k] семантически эквивалентна (*((m.insert(make_pair(k, T()))).first)).second.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Словарь данных и каталоги
Словарь данных и каталоги Описания компонентов всех физических и логических файлов содержатся на каждой AS/400 в одном месте. В терминах «родного» интерфейса это место называется словарем данных. Словарь данных — это специальный объект OS/400, который обслуживается
Приложение № 4 Словарь терминов
Приложение № 4 Словарь терминов Blogger relations – набор правил, определяющий характер отношений между блоггерами и отношений между блоггерами и компаниями.RSS (really simple syndication) – способ передачи содержимого блога на сторонние сайты. Читатель блога может подписаться на
2.2.1. Словарь Зализняка
2.2.1. Словарь Зализняка Одним из широкодоступных (и активно используемых) русскоязычных ЛБД является электронный вариант фундаментального «Грамматического словаря русского языка» А.А.Зализняка. Текст словаря был перенесен на машинные носители в начале 80-х годов. С тех
Понятийный словарь
Понятийный словарь Антиспам поисковый — набор алгоритмов, позволяющих отделить спам от качественных веб-страниц. С помощью алгоритмов антиспама «Яндекс» проверяет все сайты, которые индексирует. А уже проиндексированные страницы регулярно перепроверяет, чтобы
Словарь
Словарь Numerics 10 Base2 – спецификация монополосной сети Ethernet со скоростью передачи данных 10 Мбит/с на 50-омном тонком коаксиальном кабеле. Спецификация 10 Base2, являющаяся частью стандарта IEEE 802.3, устанавливает предельное значение протяженности одного сегмента до 185 метров. См.
3.9. Словарь синонимов
3.9. Словарь синонимов Редактирование текстового документа – это не только исправление орфографических ошибок в словах и правильное построение предложений. Очень важным является также читаемость текста. Если в одном предложении вы три раза употребили одно и то же слово,
Словарь терминов
Словарь терминов CRC-карточки, CRC cards. CRC - Class/Responsibilities/Collaborators, Класс/Ответственности/Сотрудники; простое, но достаточно эффективное средство мозгового штурма при выявлении ключевых абстракций и механизмов. абстрактная операция, abstract operation. Объявленная, но не реализованная
Словарь с дубликатами (Multimар)
Словарь с дубликатами (Multimар) multimар - ассоциативный контейнер, который поддерживает равные ключи (возможно, содержит множественные копии того же самого значения ключа) и обеспечивает быстрый поиск значений другого типа T, связанных с ключами.template ‹class Key, class T, class Compare =
Глава 7. Словарь
Глава 7. Словарь А Альбомная ориентация LandscapeГоризонтальное расположение листа
Lingvo – электронный словарь
Lingvo – электронный словарь (http://www.abbyy.ru)Приятно, конечно иметь дело с таким талантливым переводчиком, как PROMT. Взял целую страницу, скормил программке и наслаждайся текстом на родном языке. На, а если нужно перевести только одно слово или словосочетание? Покупать дорогущую
Приложение Словарь микростокового фотографа
Приложение Словарь микростокового фотографа Приведем некоторые сленговые понятия, которые могут встретиться начинающему микростоковому фотографу в различных статьях, написанных коллегами и размещенных на интернет-ресурсах, в данной книге или упомянутых на
Словарь компьютерных терминов
Словарь компьютерных терминов А abend (abnormal end) — аварийное завершение работы программы, завершение работы программы с ошибкой, синоним этого термина — crashAC (Accumulator) — аккумуляторAC (Alternating Current) — переменный токaccept — соглашаться, приниматьactive — активный,
Словарь как орудие атаки
Словарь как орудие атаки Когда кто-нибудь получает ваш пароль, он может вторгнутся в вашу систему. В большинстве случаев, вы даже не узнаете, что произошло что-то плохое.У юного хакера, которого я назову Иваном Питерсом, есть цель – получить исходный код для новой
Словарь терминов
Словарь терминов Там, где это возможно, ХР использует общеупотребительные, общепринятые и широко распространенные термины. Если некоторые используемые в рамках ХР концепции в значительной степени отличаются от концепций в других областях знаний, отличие