c ++ push_back()在向量映射中

Ree*_*ese 5 c++ vector map

我正在尝试动态地将元素添加到地图中包含的向量中,以存储映射到不同ID的多个"粒子"对象数组.我是语言的新手,所以我很难理解这是否只能用迭代器来完成?在这种情况下,感觉有点矫枉过正.是否可以直接访问地图中的矢量?因为我可以按键访问地图元素,并且因为每个键只有一个向量,所以看起来它应该是可能的.我没有确切的代码作为示例,但它看起来像这样:

int currentId = 1;  
map <int, vector<Particle> > particleMap;    
Particle p;  
particleMap[currentId] <access to vector somehow here?> push_back(p);
Run Code Online (Sandbox Code Playgroud)

我确信我在这里缺少一些更大的概念,但我发现自己需要这种类型的数据结构,所以知道访问这些"表"的正确方法会很棒.

Jon*_*Jon 16

particleMap[currentId].push_back(p);
Run Code Online (Sandbox Code Playgroud)

会工作得很好.

vector每个身份只有一个; 这就是你所指的particleMap[currentId].然后你继续表达,就像你在写作一样myVector.push_back(p).