STL------vector容器(向量)

STL容器类型S共同具有的操作:

  1. S s1 构造空容器
  2. begin()返回第一个元素的迭代器
  3. end()返回最后一个元素下一个位置的迭代器
  4. clear()清空容器内容
  5. empty()判空。空返回1,非空返回0
  6. size()返回容器的元素个数
  7. s1.swap(s2)将容器s1与s2的内容交换

1.向量容器中的元素连续储存在动态分配的数组中,因此支持高效的随机访问和尾部插入操作以及动态扩展容器空间。
2.向量容器对象分配的储存空间常常比实际储存的元素个数大,前者叫向量容器的容量(capacity)可以用capacity()成员函数获取;后者叫向量容器的大小(size),可以用size()函数获取。
3.在中间删除或添加元素效率不高,越靠近头部越慢;不支持push_front和pop_front函数
4.向量容器不支持双向遍历,既没有逆向迭代器
5.删除向量容器的元素时,并不会使空闲的空间被释放,可以使用下列语句释放多余空间:vector(s.begin(),s.end()).swap(s)

常用的操作:

  1. 尾部插入元素t:push_back(t)

  2. 删除尾部元素:pop_back()

  3. 清空操作:clear()清空容器的内容

  4. 删除操作:erase(p):删除p所指向的元素,并返回下一个元素的迭代器;erase(p1,p2):删除区间[p1,p2)内的元素,并返回p2的迭代器

  5. insert(p1,t)在p1所指的位置插入一个新元素t,返回一个迭代器指向新元素t,可以接收返回的迭代器,也可以不接收;insert(p1,n,t)在p1所指的位置插入n个新元素t,无返回值

  6. reserve(n):若当前容量大于或等于n,什么也不做,否则扩大容器的容量,使得容器的容量不小于n

  7. resize(n)改变容器的大小为n,如果原有的元素个数大于n,则删除容器末尾多余的元素;反之,在容器末尾会用默认构造函数填充

  8. s.front()获取容器首元素的引用,s.back()获取尾元素的引用

  9. s. at(index)返回索引所指向的数据

向量容器特有的操作:capacity() , reserve()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值