mapm; //第一种插入方式 m.insert(pair (1, 10)); //第二种插入方式 m.insert(make_pair(2, 20)); //第三种插入方式 m.insert(map ::value_type(3, 30)); //第四种插入方式 m[4] = 40;
结果
key = 1 value = 10 key = 2 value = 20 key = 3 value = 30 key = 4 value = 40
注意
如果key = 1 value = 10已经存在,如何改变?
mapm; //第一种插入方式 m.insert(pair (1, 10)); m.insert(pair (1, 12)); //第二种插入方式 m.insert(make_pair(1, 20)); //第三种插入方式 m.insert(map ::value_type(1, 30)); //第四种插入方式 //m[1] = 40; printMap(m);
运行结果
key = 1 value = 10
所以需要用第四种方式改变:m[1] = 40;
二、遍历(利用迭代器)void printMap(map& m) { for (map ::iterator it = m.begin(); it != m.end(); it++) { cout << "key = " << it->first << " value = " << it->second << endl; } cout << endl; }
map
it->first map容器的key值
it->second map容器的value值



