(十一)关联容器

map:关键字-值(key-value)对,字典

set:关键字的集合,可以高效的查询一个关键字是否在这个集合中.

允许重复关键字的容器名字中包含 multi(即一个关键字有多个值),用哈希函数组织的无需容器以unordered开头

map<string, size_t> word_count;
++word_count["SomeKey"];
//如果word_count中没有SomeKey,则下标运算会自动创建一个新的元素,关键字为SomeKey,值为0(值执行默认初始化?)
map中的元素为pair类型对象,first成员保存关键字,second成员保存对应的值.

关键字类型要求必须实现 元素比较方法,或自定义操作提供比较函数,要满足基本三点要求:

两个元素不能同时小于对方;如果k1小于k2,那么k2绝不能小于k1.

如果k1小于k2,且k2小于k3,那么k1必须小于k3;

如果存在两个元素,任何一个都不小于另一个,那么我们称这两个元素是"等价"的.如果k1"等价于"k2,且k2"等价于"k3,那么k1必须"等价于"k3.


pair的默认构造函数对数据成员进行值初始化,有两个public的成员,first,second;关键字first是const的.set的迭代器是const的.

当解引用map迭代器时,会得到一个value_type对象,当对map下标访问时,会得到mapped_type对象




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值