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