一维vector初始化
-
设置数组长度,默认初始值(默认初始值为 0)
vector<int> data(N);
N
为默认数组长度,默认初始值为 0。 -
设置数组长度,给定值初始
vector<int> data(N,value);
N
为默认数组长度,全部元素设置为初始值value
。 -
直接给定数据
vector<int> data = {1,2,3,4,5};
-
动态改变长度(调用
vector
中的resize()
函数)改变容器的大小,并且创建对象,因此,调用这个函数之后,就可以引用容器内的对象了。
resize()
函数最有两个参数,一个表示容器大小,一个表示初始值(可省略,默认为0)。既修改
capacity
大小,也修改size
大小。 -
预留空间(调用
vector
中的reserve()
函数)预留空间(改变了容器的大小),但在空间内不真正创建元素对象,所以在没有添加新的对象之前,不能引用容器内的元素。
reserve()
函数只有一个参数,即需要预留的容器的空间大小。只修改
capacity
大小,不修改size
大小。
二维vector初始化
-
设置数组长度,默认初始值(默认初始值为 0)
vector<vector<int>> data(N1, vector<int>(N2));
N1
为行,N2
为列,默认值为 0。 -
设置数组长度,给定值初始
vector<vector<int>> data(N1, vector<int>(N2,value));
N1
为行,N2
为列,默认值为value
。 -
直接给定数据(以初始一个 2X5 的数组为例)
vector<int> data = {{1,2,3,4,5},{6,7,8,9,10}};
三维vector初始化
-
设置数组长度,默认初始值(默认初始值为 0)
vector<vector<vector<int>>> dp(N1, vector<vector<int>>(N2, vector<int>(N3)));
默认值为 0。
-
设置数组长度,给定值初始
vector<vector<vector<int>>> dp(N1, vector<vector<int>>(N2, vector<int>(N3, value)));
默认值为
value
。
参考
https://blog.csdn.net/jackywgw/article/details/6248342。
https://blog.csdn.net/bianchengxiaosheng/article/details/102931335。