C++标准库vector以及迭代器

发表于:2014-7-11 09:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:笑侃码农    来源:51Testing软件测试网采编

#
DoNet
分享:
  今天看C++的书,出现了一个新的概念,容器vector以及容器迭代器。
  vector是同一种对象的集合,每个对象都有一个对应的整数索引值。和string对象一样,标准库将负责管理与存储元素相关的类存。引入头文件
  #include<vector>
  1.vector对象的定义和初始化
  1 vector<T> v1             vector保存类型为T的对象。默认构造函数,v1为空
  2 vector<T> v2(v1)         v2是v1的一个副本
  3 vector<T> v3(n,i)        v3包含n个值为i的元素
  4 vector<T> v4(n)          v4含有值初始化的元素的n个副本
  如果没有指定元素的初始化式,那么标准库将自行提供一个元素初始值进行值初始化。这个由库生成的初始值将用来初始化容器中的每个元素,具体的值为何,取决于存储在vector中元素的数据类型。
  如果vector保存内置类型如int,那么标准库将用0值创建元素初始化式
  vector<int> vv(10);      //10个元素,每个被初始化为0
  如果vector保存的是含有构造函数的类类型的元素,标准库将用该类型的默认的构造函数创建元素的初始化式
  vector<string> vvvv(10)      //10个元素,每个被初始化为空字符串
  还有第三种情况,元素类型可能是没有定义构造函数的类类型。这种情况下,标准库仍产生一个带初始值的对象,这个对象的每个成员进行了值初始化。
  2.vector对象的操作
  几种重要的操作
1 v.empty()               如果v为空,则返回true,否则返回false
2 v.size()                返回v中元素的个数
3 v.push_back()           在v的末尾增加一个值为t的元素
4 v[n]                    返回v中位置为n的元素
5 v1=v2                   把v1中的元素替换为v2中元素的副本
6 v1==v2                  如果v1与v2相等,则返回true
7 !=,<,<=,>,>=            保持这些操作符惯有含义
  size()返回相应vector类定义的size_type的值。
  vector::size_type             //error
  vector<int>::size_type    //ok
  push_back()函数将新元素添加到vector最后面。
21/212>
100家互联网大公司java笔试题汇总,填问卷领取~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号