C ++ STL-подобный двунаправленный Multimap

Поиск в проектах с открытым исходным кодом (без повышения), я нашел STL-подобный контейнер bimap Вот где реализует двунаправленную карту. И есть multimap в стандартных библиотеках C ++.

  • Но я хочу знать, есть ли какие-либо усилия для реализации «STL-подобного
    Двунаправленная мультикарта «?
  • Или, как мы можем объединить существующие контейнеры, чтобы сделать эти данные
    состав?

Примечание: простое решение использует два multimap с двунаправленным способом. Но это не очень хорошая производительность. Потому что для каждого insert/remove/find операцию мы должны выполнить их дважды. Кроме того, он выделяет больше памяти.

Примечание II: boost.bimap Хорошее предложение от HostileFork и KerrekSB, и я воспользуюсь им, если нет возможности. Но перед этим мне нужно найти библиотеку классов без поддержки и небольшого размера.

1

Решение

Boost.bimap позволяет настроить тип коллекции для обоих значений; оба могут быть неуникальными.

4

Другие решения

Зачем использовать случайный код «CodeProject», когда есть стимул для повышения?

http://www.boost.org/doc/libs/1_42_0/libs/bimap/doc/html/index.html

Boost-код пытается приблизиться к приемлемой методологии стандартной библиотеки, и существует процесс проверки, с помощью которого в конечном итоге все принимается. Может быть, в следующем стандарте, кто знает?

2

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector