c++ map利用迭代器赋值
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                c++ map利用迭代器赋值
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                我自己的理解:c++的map類型的迭代器得到的是一個關(guān)于元素的引用,即pair,而且這個pair的關(guān)鍵字是const的,所以不能修改其值,我們只能修改value的值、
答案書的解釋:解引用關(guān)聯(lián)容器的迭代器,得到的是一個value_type的值得引用。因此對map而言,得到的是一個pair類型的引用,其first成員保存const關(guān)鍵字,second成員保存值。因此通過迭代器只能修改值,而不能修改關(guān)鍵字。
#include <string> #include <iostream> #include <list> #include <vector> #include <set> #include <map> using namespace std; int main() { map<string,int> m1; map<string,int>::iterator it=m1.begin(); it -> second = 12345;return 0;} ~ ~總結(jié):
自己的理解和答案還是有點差距:
(1)迭代器得到是一個value_type值得引用,而不能僅僅說是元素的引用。value_type和元素類型不一樣,對map而言,value_type的第一個成員比元素的第一個成員(第一個成員也就是first成員)多一個const。
?(2)得到的迭代器是value_type引用,first成員保存const 關(guān)鍵字。這樣描述太精確了。
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的c++ map利用迭代器赋值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: c 语言现代方法13章习题6
- 下一篇: c++ primer 5th,练习11.
