[英]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.