C++ 向量 vector 用法简述

vector 是一个序列容器,长度不定的数可用它来处理,其会自动地分配存储空间。

vector 在头文件 <vector> 中定义,使用它要先加入头文件。

#include <vector>

声明和赋值

声明

声明 vecotr 时要在尖括号 <> 内指定存储数据的类型。下面指定了存储整型数据,也可是浮点型或字符串型等。

vector<int> v1;

下面声明一个存储 vector 类型的 vector,这相当于二维向量,两个维度都是可变的。

vector<<vector<int> > v2;

定义的时候要记得在> >符号之间加上空格,避免编译器将其视为移位操作。C++11 标准可以不用空格。

要体会上面写法与下面写法的区别,下面这种写法表示有一个 vector 数组,它的大小是 10,这一维度是固定的。而数组中每个 vector 元素大小是不固定的。

vector<int> v3[10];

构造和初始化

在声明时可以通过括号的形式进行初始化。

vector<int> v11(3);        // 有 3 个元素,每个元素都是 0
vector<int> v12(3, 123);   // 有 3 个元素,每个元素都是 123
vector<vector<int>> v21 (3, vector<int>(4));   // 3 * 4 的二维数组,每个元素都是 0

还可以通过大括号的形式指定每个元素值。

vector<int> v13 {
   1, 2, 3};  // 3 个元素,分别为 1、2、3
vector<vector<int> > v22 {
   {
   1, 3, 2, 4}};   // 2 * 2 个元素,分别为 1、3;2、4

还可用等号进行初始化,相当于下面的赋值。

vector<int> v13 = {
   1, 2, 3};

赋值

可以用等号进行赋值,把一个向量赋值给另外一个向量。

vector<int> v13 = {
   1, 2, 3};
vector<int> v14 = v13;

assign() 可以给元素赋值,第 1 个参数表示元素个数,第 2 个参数表示值。它也可以传入一个列表参数。如果向量 v12 已经存在,它会重新设置里面的内容。

v11.assign(3, 222);
v12
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值