序列式容器------vector类模板

1、vector是定义于名称空间(namespace)std内的模板,其定义在头文件<vector>中。

  vector中的元素可以是任意类型T,必须具备可设置、可复制两个属性。模板法第二个参数是关于空间配置器设置的,用于定义内存模型,默认内存模型是C++标准库提供的allocator。

2、vector类对象的初始化

  

vector<T>  v1;vector保存类型为T的对象。默认构造函数v1为空。
vector<T> v2(v1);v2是v1的一个副本。
vector<T> v3(n, i);v3包含n个值为i的元素。
vector<T> v4(n);v4含有值初始化的元素的n个副本。

  函数push_back()将对象放入容器中,也可以用函数pop_back()将对象弹出。

  vector的对象可以使用reserve()函数预先设置容器的大小,如果没有设置容器的大小,是不允许直接给容器中的元素赋值的。

3、容器的大小和容量

  vector类模板定义了两个函数(size 和 capacity),实现统计容器元素的目的;还定义了两个函数(resize和reserve),实现设置容器大小的目的。

  函数size()和capacity()可以统计容器中元素的数量。size()函数返回容器中现有的元素数量;capacity()函数返回容器中实际能够容纳的元素的数量。函数max_size()可以返回容器所能容纳的最大元素数量。一般情况下,元素数量超越capacity()返回的数值时,vector有必要重新配置内部存储器。

  函数reserve()可以预先设置容器的大小;函数resize()可以修改容器的大小。函数reserve()可以保留适当的容量,避免重新配置内存。当然,在定义容器对象时,通过传递函数的形式,也可以设置vector的起始大小。

4、vector类的成员函数

  (1)判断向量是否为空

    向量模板vector<T>提供了一个函数:empty()。此函数可以判断向量容器中元素是否为0,如果向量为空,函数返回真;如果向量不为空,函数返回非真。

template<class _TYPE, class _A>bool vector::empty()const;

 

转载于:https://www.cnblogs.com/CZT-TS/p/7623298.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值