其实在之前一篇关于map的基本操作中已经提到过注意[]操作,这里再强调一下。

先看下面的程序:

#include<iostream>
#include<map>
using namespace std;
int main()
{
map<int,int>nums;
nums[]++;
nums[]+=;
if(==nums[])
{
cout<<"key为4对应的value为0"<<endl;
}
map<int,int>::iterator it;
for(it=nums.begin();it!=nums.end();it++)
{
cout<<it->first<<" "<<it->second<<endl;
}
return ;
}

输出结果

如果没有注意过map的[]操作的话,一定会感觉结果很怪异,明明没有对nums插值,怎么就有了这些值,解释如下:

在map中任何时候使用[],如果找到key值,则按照对应的key值找到value并进行操作,如果找不到key,自动插入一个key,并且会返回一个默认的value(例如,默认的value如果是int,则会返回0,如果是string则返回“”)。

测试结果也验证了map中会按照key值自动排序。

最新文章

  1. webpack入坑之旅(三)webpack.config入门
  2. jsp通过s:hidden传值给后台,后台数据出现了若干逗号问题
  3. Spring3.1 Cache注解
  4. Struts 1.3(第一例) - Login
  5. debian修改ip地址
  6. poj 1715 Hexadecimal Numbers 排列组合
  7. js 数组API之forEach、map的用法
  8. html表单的方便操作
  9. LeetCode算法题-N-ary Tree Postorder Traversal(Java实现)
  10. SQL 将查询结果插入到另一张表中
  11. Redis客户端操作之Jedis
  12. Springboot 2.0.x 引入链路跟踪Sleuth及Zipkin
  13. vue中根据当前时间进行排序
  14. 2.4 UML类图
  15. python正则表达式获取两段标记内的字符串
  16. 如何从dll文件导出对应的lib文件?
  17. 【原创】在VS2012中采用C++中调用DLL中的函数(4)
  18. UVA548
  19. 【VBA】点击工作簿中的每个单元格,整行整列变色
  20. [BZOJ4137]火星商店问题

热门文章

  1. Hibernate O/R Mapping模拟
  2. win8.1 环境下搭建PHP5.5.6+Apache2.4.7
  3. Linux VPS 免费管理面板推荐
  4. 创建第一个MVC
  5. Xamarin 中开发Android实现全屏或者不显示标题栏的方法-宋兴柱
  6. 13test02:信用卡校验
  7. Java开发WebService的几种方法--转载
  8. POJ 1419
  9. Inlinehook PspCreateProcess
  10. eclipse引入tomcat