Вы можете сделать с неупорядоченной картой со списком в качестве значения, сколько вам нужно.
Например, для таких определений:
std::unordered_map <string, list<int> > testmap;
list<int> templist;
Вы можете:
- заменить или создать весь список значений:
testmap["First"] = templist;
- распечатать элемент списка
std::cout << (*testmap["First"].begin()) << endl;
- или распечатать все элементы
for (auto v : testmap["First"])
std::cout << v << "\n";
- заменить некоторые значения списка
std::replace(testmap["First"].begin(), testmap["First"].end(), 20, 99)