关闭

C++map容器复习

166人阅读 评论(0) 收藏 举报
分类:

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

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

定义:如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中第一个元素的值





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2247次
    • 积分:146
    • 等级:
    • 排名:千里之外
    • 原创:12篇
    • 转载:7篇
    • 译文:0篇
    • 评论:0条
    文章分类