标准库类型 vector

标准库类型 vector 表示对象的集合,其中所有对象的类型都相同。

因为 vector 中容纳着其他对象,所以它常被称为容器。

要想使用 vector 需要包含头文件 <vector>

vector 是模板而非类型,由 vector 生成的类型必须包含 vector 中元素的类型,例如:vector<int>

定义和初始化vector对象

  • 列表初始化 vector 对象
vector<string> articles = {"a","an","the"};
  • 创建指定数量的元素
vector<int> ivec(10,-1);
  • 值初始化
vector<int> ivec(10);   //10个元素,每个都初始化为0
vector<string> svec(10);    //10个元素,每个都是空string对象
  • 列表初始值还是元素数量
vector<int> v1(10);     //v1有10个元素,每个值都是0
vector<int> v2{ 10 };   //v2有1个元素,其值为10
vector<int> v3(10, 1);      //v3有10个元素,每个值都是1
vector<int> v4{ 10, 1 };    //v4有2个元素,值分别是10和1

vector<string> v5{ "hi" };  //列表初始化,v5有一个元素
vector<string> v6("hi");    //错误,不能使用字符串字面值构建vector对象
vector<string> v7(10);  //v7有10个默认初始化的元素
vector<string> v8{ 10, "hi"};   //v8有10个值为"hi"的元素

vector支持的操作

不能用下标形式添加元素

vector<int> ivec;
for(decltype(ivec.size())ix = 0;ix!=10;++ix)
    ivec[ix] = ix;  //严重错误,ivec不包含任何元素

vector 对 象以及 string 对象的下标运算符可以用于访问已经存在的元素,但是不能用于添加元素。‘

猜你喜欢

转载自www.cnblogs.com/xiaojianliu/p/12498434.html
今日推荐