Библиотека контейнеров Boost Multi-index предоставляет шаблон класса под названием multi_index_container, который позволяет конструировать контейнеры, поддерживающие один или несколько индексов с различной сортировкой и семантикой доступа. Индексы обеспечивают интерфейсы, аналогичные интерфейсам контейнеров STL, что делает их использование знакомым. Концепция многоиндексирования по одному и тому же набору элементов заимствована из терминологии реляционных баз данных и позволяет задавать спецификации сложных структур данных в духе многоиндексированных реляционных таблиц, где простых наборов и карт недостаточно. Предоставляется широкий выбор индексов, смоделированных после аналогичных STL-контейнеров, таких как std::set, std::list и std::unordered_set.
Повышаю. MultiIndex имеет дополнительные функции, такие как поиск подобъектов, запрос диапазона, обновление элементов на месте и вычисление рангов, что делает его удобной заменой для std::set и set::multiset, даже когда нет необходимости в многоиндексирующих возможностях.
Универсальная природа Boost. MultiIndex обеспечивает спецификацию широкого спектра различных структур данных. Ниже приведены возможные примеры использования, разработанные в документации:
Статья Boost.MultiIndex Documentation - Index раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.