Multimap по существу имеет группы данных, отсортированные по ключу. Мне нужен метод, с помощью которого я мог бы получить доступ к этим отдельным группам и получить их совокупные значения.
Например, в std::multimap< string, int >
я храню
{"Group1", 1},
{"Group1", 2},
{"Group1", 3},
{"Group2", 10},
{"Group2", 11},
{"Group2", 12}
Сохраняя эти значения, я должен быть в состоянии повторить эту мультикарту и получить совокупные значения каждой "группы". Проблема в том, что в STL не определены функции для доступа к MultiMaps таким способом. Я мог бы использовать lower_bound
, upper_bound
для ручной итерации мультикарты и суммирования содержимого группы, но я надеюсь, что могут быть лучшие способы, уже определенные в STL? Может кто-нибудь предложить решение о том, как я мог бы получить совокупные значения для группы в приведенном выше примере.