У меня есть unordered_map (на С++), который связывает int с объектом класса Item. Я инициализирую свою неупорядоченную карту в начале файла как таковую:
#include <iostream>
#include <unordered_map>
using namespace std;
typedef std::unordered_map<int, Item> MyList;
С тех пор всякий раз, когда я пытаюсь использовать MyList, например:
Item item1;
MyList[12] = item1;
Я получаю сообщение об ошибке в указанной строке: "ошибка: ожидаемый неквалифицированный идентификатор перед токеном ["" при компиляции в терминале. Есть идеи, что может быть не так? Ниже приведен другой пример того, как я использую его и получаю ту же или аналогичную ошибку.
void itemManager::removeItem(int x) {
MyList.erase(x);
}
Выдает: «ошибка: ожидаемое первичное выражение перед токеном ‘.’»
Пожалуйста и спасибо за помощь.
MyList[12]
эквивалентно выражениюstd::unordered_map<int, Item>[12]
. - person Jesse Good   schedule 29.06.2012