2D数组值在c++中声明后赋值

2D Array Value Assign After Declaration in C++

本文关键字:声明 赋值 c++ 数组 2D      更新时间:2023-10-16

我知道当我们想给二维数组赋值时我们声明数组,我们这样做:

int myArray[2][4] = {{1,2,3,4},{5,6,7,8}};

但是我应该如何赋值"之后"声明它?我想这样做:

int myArray[2][4];
myArray = {{1,2,3,4},{5,6,7,8}};

当我这样做时,编译器给出错误。请帮助。

如果你想使用std::vector,那么你可以这样做:

#include <vector>
int main()
{
    std::vector< std::vector<int> > arrV ;
    arrV = { {1,2,3,4}, {5,6,7,8} };
}

或使用std::array:

#include <array>
int main()
{
    std::array<std::array<int,4>,2> arr ;
    arr =  {{  {{1,2,3,4 }}, {{5,6,7,8}}  }} ;
}

注意,内部集合和外部集合中都有双大括号。这个答案只适用于c++ 11。