c++顺序容器的学习

转载 2015年11月18日 22:48:34

1.顺序容器分为3类:vector,list,deque

2. 容器内元素的类型约束:

    在C++中,大多数的数据类型都可以做为容器的元素,甚至容器。容器的元素类型必须符合两个条件:1.元素类型支持赋值运算,2,元素类型的对象必须可以复制。要注意的是引用类型无法成为容器的元素。(这是因为如果引用类型成为元素后,就会出现引用的引用,或者指针的引用等,C++里面不支持这样的语意)

3.三种容器都是顺序容器,我的理解是把vextor看做数组,list是链表,而deque是集合了二者的一些特点,下面对三种      顺序容器操作做个比较:

    容器迭代器的操作:因为list输入链表操作,所以它无法进行iter + n以及比较大小的关系运算,如>=, >

    容器中添加元素:c.push_front(t) 向容器前端添加t,很显然vector不能使用啊

    容器元素的访问:链表无法支持随机读取,像c[n],c.at[n]这种读取容器第n个值的list是没法用啦

    容器元素的删除:c.pop_front(t) 删除首元素,vector不能使用

4. vector容器是连续分配的,它提供了两个接口capacity和reserve,capacity获取系统当前分配的当前内存能储存多少个元素,而reserve则告诉容器应该预留多少个元素的空间




FROM:  http://blog.csdn.net/wasd6081058/article/details/7380661

相关文章推荐

《c++ primer》 第9章 顺序容器 学习笔记

1.容器概述 #include //迭代器,包含c++11的begin() 和end()函数 #include //c++11 数组类型,长度固定,提供了更好、更安全...

c++primer学习:顺序容器(1)

[1]顺序容器是指为程序员提供了控制元素存储和访问顺序的能力.大约包括了vector,deque,list,forward_list,array,string.[2]我们需要判断什么时候该用什么样的容...

C++Primer学习笔记(9)顺序容器

(1)顺序容器将单一类型元素聚集起来成为容器,然后根据位置来存储和访问。 (2)标准库提供了vector,list,deque三种顺序容器以及stack,queue, priority_queue三种...

C++primer学习:顺序容器(2)

[1]顺序容器的插入操作:push_front,push_back之类的操作很简单,但是不支持在随机位置插入元素.insert(p,10,t)在迭代器p之前插入10个t.insert(p,t)在迭代器...

C++ Primer 第9章 顺序容器 第一次学习笔记

好好学习天天向上。 C++ Primer第9章 顺序容器 的学习笔记

C++ primer第二次阅读学习笔记(第9章: 顺序容器)

第九章 顺序容器 顺序容器内的元素按位置进行存储和访问。元素的排列次序与元素值无关,而是由元素添加到容器的次序决定的。 标准库定义了三种顺序容器类型:vector,list,deque。它们的差别...

《C++primer(第五版)》学习之路-第九章:顺序容器

【 声明:版权所有,转载请标明出处,请勿用于商业用途。  联系信箱:libin493073668@sina.com】 9.1 顺序容器概述 1.顺序容器类型 vector          可...

c++primer学习笔记 ( 第九章 顺序容器)

9.1顺序容器的定义 #include #include #include vector ivec;   //定义一个空的vector类型, vector ivec2(ivec);  /...

C++ Primer 学习笔记_29_STL实践与分析(3) --顺序容器的操作(下)

 STL实践与分析 --顺序容器的操作(下) 六、访问元素     如果容器非空,那么容器类型的front和back成员将返回容器的第一个和最后一个元素的引用。 【与begi...

顺序容器 - 1【C++ Primer 学习笔记 - 第九章】

顺序容器: vector :  支持快速随机访问 list      :  支持快速插入/ 删除 deque:  双端队列    double-ended queue 顺序容器适配器 s...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:c++顺序容器的学习
举报原因:
原因补充:

(最多只允许输入30个字)