std::map<Item*, item_quantity_t> _items;
bool Inventory::hasItem(Item const& item) {
return (_items.find(&item) != _items.end());
};
此代碼將無法正常工作,但改變「hasItem」的輸入類型Item & item
將工作... 有人可以解釋爲什麼給我?我已經看到std :: find需要一個const引用,所以傳遞它一個const對象應該沒問題,至少它是我的理解爲什麼map :: find需要我的參數不是const?
std :: map _items;可能是一個解決方案。 –
tp1
2012-01-12 20:28:04