系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
16.3.1模板类 vector
第4章简要地介绍了 vector 类,下面更详细地介绍它。在计算中,矢量(vector)对应数组,而不是第11章介绍的数学矢量(在数学中,可以使用N个分量来表示N维数学矢量,因此从这方面讲,数学矢量类似一个 N 维数组。然而,数学矢量还有一些计算机矢量不具备的其他特征,如内乘积和外乘积)。计算矢量存储了一组可随机访问的值,即可以使用索引来直接访问矢量的第10 个元素,而不必首先访问前面第9个元素。所以 vector 类提供了与第 14章介绍的 valaray 和 ArrayTP 以及第4章介绍的 array 类似的操作,即可以创建 vector 对象,将一个 vector 对象赋给另一个对象,使用[]运算符来访问 vector 元素。要使类成为通用的,应将它设计为模板类,STL正是这样做的–在头文件vector(以前为 vector.h)中定义了一个vector 模板。
要创建 vector 模板对象,可使用通常的表示法来指出要使用的类型。另外,vector 模板使用动态内存分配,因此可以用初始化参数来指出需要多少矢量:
#include vector
using namespace std;
vector<int>ratings(5);//a vector of 5 ints
int n;
cin >>n;
vector<double>scores(n);<