2011-01-12 137 views
-1

如何從現有容器創建unordered_map的副本?我可以使用賦值運算符還是需要逐個迭代它? 另外,我使用shared_ptr作爲地圖中的值。我是否需要特別小心,因爲它是shared_ptr?將一個STL容器的內容複製到另一個容器

typedef unordered_map<string, shared_ptr<classA>>MAP1; 
MAP1 map1; 
map1["abc"] = make_shared<classA>(); 
MAP2 map2 = map1; ?? //can I use assignment operator?? 

謝謝。

+8

我通常不會以這種方式回答,但是您是否嘗試過? – GManNickG 2011-01-12 06:00:44

回答

1

是的,你可以。

關於shared_ptr,如果您希望複製的指針指向相同的值,那麼no。如果你想要兩個獨立的副本(深層複製),那麼你需要自己進行復制。

相關問題