我在看書C++ Primer 5th Edition。從它的練習是有點模糊,讓我感到困惑。它會爲是否可以使用地圖迭代器爲地圖的元素賦值?
練習11.16:使用地圖迭代器寫 的值賦給一個元素的表達(頁431)
我使用std::copy
和std::insertor
複製知道它可以做到的。從一個容器到地圖的一系列元素。但是這個練習是否真的暗示了這種方法?是否可以使用地圖迭代器而不是std::insertor
來插入成員函數?
更新:
這個問題已經被縮小範圍到: 是否可以更換或添加使用地圖迭代器的鍵值對,而不是std::insertor
也不插入成員函數?
對我來說,聽起來更像是要替換已存儲在地圖中的元素。就像,使用迭代器獲取元素,然後通過賦值運算符分配一個新對象,該元素將被替換,仍然可以通過同一個鍵/迭代器訪問。沒什麼大不了的,但這就是我理解這句話的方式。 – ypnos
如果你問你是否可以設置給定迭代器的key值,那麼你可以,特別是通過'it-> second = newValue;' – WhozCraig
@WhozCraig Thx男士。我知道你的意思,並確定你的代碼工作。但我不太確定這是鍛鍊想要的。 –