我有一个像 typedef map<int32_t,std::vector<int32_t>> myMap
删除从矢量值的关键
地图我添加矢量值相对于关键像
myMap[somePointer->getVal()].push_back(Id1);
myMap[somePointer->getVal()].push_back(Id2);
myMap[somePointer->getVal()].push_back(Id3);
myMap[somePointer->getVal()].push_back(Id4);
如果我想删除什么密钥的矢量值? 我试过 myMap[somePointer->getVal()].erase(Id1)
但是,这个编译器哭着有错误。
你知道multimap吗? http://www.cplusplus.com/reference/map/multimap/ – Geoffroy
告诉我们错误 – billz
@billz:同意,错误总是有帮助的,应该是必需的。对于熟悉矢量接口的人来说,这个特殊情况很明显,问题是试图“擦除”一个值,而不是迭代器......但是:当请求编译器错误时,请提供错误消息!* –