В моей программе, у меня есть карта со строковыми ключами и списка (через определенный пользователем класс) значений, определяемый следующим образом:Проблема извлечения из карты списков
std::map<const char*, std::list<Show>> _shows;
У меня есть функция, которая добавляет к конкретный список, например, так:
void Add(Show s, const char* index) {
list<Show> lshow = _shows[index];
lshow.push_back(s); }
Однако каждый раз, когда функция вызывается с тем же индексом, а не возвращать тот же самый список, я получаю пустой список.
Что я делаю неправильно?
ETA: Я вижу, что количество значений в словаре увеличивается после каждого вызова функции. Может ли это быть [] связанным с оператором?
А также убедитесь, что вы редактируете список, хранящийся на карте, а не его копию, как говорят все остальные :) –