顺序容器及其常用函数

前言

  容器是指容纳特定类型对象的集合。顺序容器则是指该容器根据位置访问保存在其中的对象。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。

原文地址:https://www.cnblogs.com/scut-fm/p/3534296.html