为什么需要vector?
- 封装任何类型的动态数组,自动创建和删除。
- 数组下标越界检查。
vector对象的定义
- vector<元素类型> 数组对象名(数组长度);
- 例: vector arr(5)
建立大小为5的int数组
vector对象的使用
- 对数组元素的引用: vector对象名 [ 下标表达式 ]
- vector数组对象名不表示数组首地址
- 获得数组长度,用size函数: 数组对象名.size()
例1: 求数组元素的平均值,元素类型不限
#include <iostream>
#include <vector>
using namespace std;
//计算数组arr中元素的平均值
double average(const vector<double> &arr)
{
double sum = 0;
for (unsigned i = 0; i<arr.size(); i++)
sum += arr[i];
return sum / arr.size();
}
int main() {
unsigned n;
cout << "n = ";
cin >> n;
vector<double> arr(n); //创建数组对象
cout << "Please input " << n << " real numbers:" << endl;
for (unsigned i = 0; i < n; i++)
cin >> arr[i];
cout << "Average = " << average(arr) << endl;
return 0;
}
例2: 基于范围的for循环配合auto举例
#include <vector>
#include <iostream>
int main()
{
std::vector<int> v = {1,2,3};
for(auto i = v.begin(); i != v.end(); ++i)
std::cout << *i << std::endl;
for(auto e : v)
std::cout << e << std::endl;
}
612

被折叠的 条评论
为什么被折叠?



