C++map容器复习

迭代器作用:检查容器内元素、访问元素,是一种数据类型。

与下标操作的比较:所有标准库容器都有对应的迭代器类型,但只有少数容器支持下标操作。迭代器应用更广泛。

定义:如vector<int>::iterator iter;

           iter的数据类型是由vector<int>定义的iterator类型。iterator是容器类型的成员函数。

迭代器有两种含义:一种就表示迭代器;另一种表示迭代器类型。



标准库pair类型:

头文件:utility  

pair<T1,T2> p;     创建一个空的pair对象,两个元素分别为T1、T2类型,元素值初始化。

p.first   返回p中名为first的公有数据成员

p.second   返回p中名为second的公有数据成员

pair类可以直接访问其数据成员,其成员都是共有的,分别命名为first和second。用成员访问标志(点操作符)即可访问。

如:

pair<string,string> p;

string f,g;

p=make_pair(f,g);

访问p的元素时可用p.first,p.second。


map对象的元素为:键-值  对。

map容器中用作索引的键的类型:map<K,V>::key_type 

map容器中键所关联值的类型:map<K,V>::mapped_type

map对象的值类型:    map<K,V>::value_type    是pair类型,其first元素类型:const map<K,V>::key_type类型;second元素类型:map<K,V>::mapped_type类型。

value_type 中的值成员可修改,而键成员不可修改。


对map迭代器解引用:

    对迭代器解引用时,会产生一个引用,指向容器中一个value_type类型的值。map对象的value_type是pair类型,所以对map容器的迭代器解引用,会产生一个pair类型的引用。

map<int,int> m;

map<int,int>::iterator map_it=m.begin();

map_it.first     访问m中第一个元素的键

map_it.second 访问m中第一个元素的值





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值