第九篇:顺序容器及其常用函数

前言

       容器是指容纳特定类型对象的集合。顺序容器则是指该容器根据位置访问保存在其中的对象。Vector,List,Deque是三种常见的容器,本文将归纳这三种容器常用的函数,以备日后查阅。

描述符说明

       在以下函数解释中,C 表示容器类型名,T表示容器的元素类型,c 表示待创建的/待处理的容器对象,其它描述符则在文中具体位置说明。

一 容器定义函数

       1. C<T> c

       创建一个空的容器 c

       2. C c( c2 )

       用 容器c2 创建 容器c

       3. C c( b, e )

       用 迭代器 b 和 e 之间的元素创建容器 c。

       下函数4,5仅用于顺序容器。

       4. C c( n, t )

       创建容器 c 并将 c 初始化为一个具有 n 个元素 t 的容器。

       5. C c( n )

       创建容器 c 并将 c 初始化为一个具有 n 个 值初始化元素的容器。

       说明:创建容器对象必须要满足两个条件:

              1. 元素类型必须支持赋值运算

              2. 元素类型的对象必须可以复制

二 获取迭代器函数

       1. c.begin()

       返回一个指向容器 c 第一个元素的迭代器

       2. c.end()

       返回一个指向容器 c 最后一个元素的下一个元素的迭代器

三 容器大小函数

       1. c.size()

       返回容器 c 中元素的个数

       2. c.empty()

       返回容器 c 中元素是否为 0 的布尔值

       3. c.resize( n )

       调整容器 c 的长度大小,使其能容纳 n 个元素。若 n < c.size() 则删除多余元素,否则对新元素进行值初始化。

       4. c.resize( n, t )

       调整容器 c 的长度大小,使其能容纳 n 个元素。若 n < c.size() 则删除多余元素,否则将新元素初始化为元素 t。

四 增加元素函数

       1. c.push_back( t )

       在容器 c 之后插入元素 t

       2. c.push_front( t )

       在容器 c 最前端插入元素 t

       PS:该函数仅适用于 list 和 deque 容器类型

       3. c.insert( p, t )

       在迭代器 p 之前插入元素 t ,返回指向新插入元素的迭代器。

       4. c.insert( p, n, t )

       在迭代器 p 之前插入 n 个元素 t

       5. c.insert( p, b, e )

       在迭代器 p 之前插入迭代器 p 和 e 之间的元素

五 删除元素函数

       1. c.erase( p )

       删除迭代器 p 所指向的元素,返回指向被删除元素的后一个元素的迭代器。

       2. c.erase( b, e )

       删除迭代器 b 和 e 之间的所有元素,返回指向被删除元素段的后一个元素的迭代器。

       3. c.clear()

       删除容器 c 的所有元素

       4. c. pop_back()

       删除容器 c 的最后一个元素

       5. c.pop_front()

       删除容器 c 的第一个元素

       PS:仅用于 list 和 deque 函数

六 赋值函数

       1. c1 = c2

       删除容器 c1 中的所有元素,再将容器 c2 的值拷贝进去。

       2. c1.swap( c2 )

       将容器 c1 和 c2 的内容交换

       3. c.assign( b, e )

       重置容器 c,将迭代器 b 和 e 之间的元素复制进去。

       4. c.assign( n, t )

       重置容器 c,将 c 的元素置为 n 个元素 t。

posted @ 2017-01-26 20:53  穆晨  阅读(454)  评论(0编辑  收藏  举报