Кодовая база, в которой я работаю, использует map::operator[]
для вставки и для увеличения количества элементов в этой записи на единицу (для меня это пробел в знаниях).Вот пример:
map<string, size_t> namesMap;
namesMap[firstName]++;
То, что я хочу сделать, это привязать идентификатор к вставке, сохраняя при этом поведение приращения в приведенном выше синтаксисе.
Моя новая карта будет выглядеть следующим образом:
map<string, pair<int, size_t>> namesMapWithID;
Я изо всех сил пытаюсь понять, как получить эквивалентную функциональность с моей новой картой.Это в основном моя цель (очевидно, неверная, поскольку «++» не может быть использован таким образом):
namesMapWithID.insert(firstName, make_pair(employeeID, ++));
Есть ли лучший подход, который я упускаю?