map重载[]的用法

#include 
#include 
#include 
#include 
using namespace std;
void main()
{
	map m1;
	m1.insert(pair(1, 1));
	m1.insert(map::value_type(2, 2));
	m1[3] = 3;
	m1[3] = 4;
	m1[4]++;
	m1[5] = 5;
	m1[5]++;
	map::iterator iter;
	for (iter = m1.begin(); iter != m1.end(); iter++)
	{
		cout << iter->first <<' '<< iter->second << endl;
	}

	system("pause");
}

1 1
2 2
3 4
4 1
5 6
请按任意键继续. . .

. .

1.insert,已经存在的key,不可以再插入,数组array插入元素,已经存在的key,覆盖插入,所以最后结果是3 4

2.m1[4]++;如果key值不存在,则创建默认对象make_pair(key,value)。m1[4]++对应4 0,value再加1,输出4 1。

3.m1[5]++;如果key值存在,则将已经存在的value加1,输出 5 6

你可能感兴趣的:(C++)