前言
本次我们要学习的是数组以及容器vector。
1. 数组
C++中的数组是一种用于存储相同类型元素的数据结构。具有以下特点
- 固定大小:数组一旦创建了,运行时如果数组不够放,不能动态调整数组大小
- 相同数据类型:同一个数组内中的元素都相同
- 连续存储:数组在内存中是连续存储的
- 下标访问:下标从0开始。如数组a的第一个元素,就可以用a[0]表示
C++中数组的声明可以用以下方式:
//dataType arrayName[arraySize]
//其中dataType为数组的类型;arrayName为数组的名字;arraySize为数组的大小
//声名一个数组的例子。比如我们要定义一个数组arr,其中有3个元素。里面的数字为1,2,3
//方式1
int arr[3] = {1,2,3};
//方式2
int arr[3];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
2. 容器vector
刚刚我们提到数组一旦固定就不能后续再更改其大小,如果再不清楚元素个数的情况下,我们用数组。我们就只能把数组定的很大,以确保可以容纳我们的元素,但是这么做的话就有一个缺点,就是数组中可能出现很多空的位置,但是这些空的位置又以及被分配了内存,这就造成了内存的浪费。因此,我们这里可以用vector,来处理不清楚元素个数的情况。
在使用vector之前,我们需要跟输入输出一样,将vector的头文件包含进来。如:
#include<vector>
下面我们来看看怎么创建一个vector并如何使用。
//vector的创建格式为vector<类型> 名称,无需指明长度
//如我们要创建一个名为aVector的容器,我们可以有以下形式
vector<int> aVector; //这样就创建成功
vector<int> aVector = {1,2,3}; //创建一个包含整数元素的容器并初始化元素
vector<int> aVector(10); //创建一个包含10个元素的容器,元素为int类型(值被系统默认初始化为0)
vector<int> aVector(10,-1); //创建一个包含10个重复元素的容器,每个元素的值都是-1
//要访问数组中的元素,这一点跟数组相同。例如
aVector[0];//就是访问容器aVector的第一个元素。
此外容器还有以下操作需要了解。
- aVector.push_back(1):表示往容器的最末端添加数字1
- aVector.pop_back():表示删除vector末尾的元素
- aVector.size():表示读取容器的大小
- aVector.clear():表示清楚容器中的元素
- aVector.empty():判断vector是否不含有任何元素,如果长度为0,则返回真,否则,返回假
总结
以上既是本次学习的内容,如果先进一步了解可以看代码随想录的C++基础课程。