返回 C++小白入门
cplusplus 官网 vector
【介绍】
动态数组vector是C语言数组的动态版本;
其目标是可以操持C语言数组下标访问元素的效率的同时,不需要一开始固定容器大小;
在vector内部,我们可以假设元素是连续存放的;
元素可以在执行过程中不断的添加;

删除中间的任意元素可以认为都是低效率的,因为会涉及到后续元素的移动;

当容器申请的空间用完了以后,需要再次申请更大的连续内存,并在拷贝数据过去之后释放掉原来的内存。

【创建数组】vector是准备取代C语言数组的一个标准库类型。
vector<int> arr;//定义一个可以存放整数的数组
【访问元素】vector最大的特点是可以用常量时间访问任意位置的元素:
int i = arr[58];//将下标位置为58的元素值赋值给整型变量i
【添加元素】到vector可以使用push_back(i)方法:
arr.push_back(i);//arr的末尾新增了一个元素
【元素数量】当前容器有多少元素size()
int c = arr.size();//获取数组元素数量存到c中
【判断空】当前容器是不是一个元素也没有的空数组:
bool e = arr.empty();//如果元素个数为0,就返回true
【遍历】使用下标遍历:
for(int i = 0; i < arr.size(); ++i)
{
cout<<arr[i]<<endl;//使用下标访问元素
}
【遍历】使用迭代器遍历:
for(auto itr = arr.begin(); itr != arr.end(); ++itr)
{
cout<<*itr<<endl;//使用迭代器的解引用操作获取元素的引用
}
【遍历】使用C++11 范围for循环:
for(auto& i : arr)
{
cout<<i<<endl;//使用范围for循环遍历元素
}
【示例代码】
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> a;//定义一个动态数组
//向动态数组中放整数:0~9
for (size_t i = 0; i < 10; i++)
{
a.push_back(i);
}
cout << "vector size:" << a.size() << endl;
//输出数组中的每一个元素
for (size_t i = 0; i < a.size(); i++)
{
cout << a[i] << " ";
}
return 0;
}

返回 C++小白入门
版权声明:本文为weixin_30151565原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。