C++中vector容器的使用和操作
需积分: 24 146 浏览量
更新于2024-09-14
收藏 24KB DOCX 举报
vector用法详解
vector是C++标准库中的一种容器类,相当于一个动态数组,可以存储不同的数据类型。它的使用非常灵活,提供了多种操作来管理和访问元素。
**定义和初始化**
vector的定义和初始化有多种方式:
1. 默认初始化:`vector<typeName>v1;`,默认情况下,v1为空。
2. 复制初始化:`vector<typeName>v2(v1);` 或 `v2 = v1;`,v2是v1的一个副本。
3. 指定大小和初始值的初始化:`vector<typeName>v3(n, i);`,v3包含n个值为i的typeName类型元素。
4. 使用数组初始化:`int a[4] = {0, 1, 2, 3, 3}; vector<int>v5(a, a + 5);`,v5的size为5,v5被初始化为a的5个值。
**值初始化**
vector的值初始化遵循以下规则:
1. 如果没有指定元素初始化式,标准库自行提供一个初始化值进行值初始化。
2. 如果保存的式含有构造函数的类类型的元素,标准库使用该类型的构造函数初始化。
3. 如果保存的式没有构造函数的类类型的元素,标准库产生一个带初始值的对象,使用这个对象进行值初始化。
**vector对象的操作**
vector对象提供了多种操作来管理和访问元素:
1. `push_back`:在容器的最后添加一个值为t的数据,容器的size变大。
2. `size`:返回容器中数据的个数,size返回相应vector类定义的size_type的值。
3. `resize`:将v的容量翻倍(或将v的容量设置为指定的值),例如`v.resize(2 * v.size)`或`v.resize(2 * v.size, 99)`。
4. `empty`:判断vector是否为空。
**其他操作**
vector还提供了其他操作,例如:
* `at`:访问指定索引的元素,例如`v.at(0)`。
* `operator[]`:访问指定索引的元素,例如`v[0]`。
* `front`:访问容器的第一个元素,例如`v.front()`。
* `back`:访问容器的最后一个元素,例如`v.back()`。
* `begin`和`end`:访问容器的开始和结束迭代器,例如`v.begin()`和`v.end()`。
vector是一个功能强大且灵活的容器类,提供了多种操作来管理和访问元素。
2012-09-30 上传
2013-07-05 上传
2021-10-06 上传
2023-08-13 上传
2010-09-19 上传
2023-09-28 上传
2023-07-20 上传
2023-06-06 上传
2023-08-29 上传
gpc123456y
- 粉丝: 1
- 资源: 7
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析