C++ Vector初始化(一维,多维)

一维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


版权声明:本文为qq_39583450原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。