繁体   English   中英

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

[英]c++ push_back() inside a map of vectors

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

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

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

particleMap[currentId].push_back(p);

会工作得很好。

每个id只有一个vector ; 这就是你用particleMap[currentId]指的。 然后你就像继续编写myVector.push_back(p)一样继续表达式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM