C ++数组初始化与赋值

时间:2013-11-22 09:30:27

标签: c++ arrays initialization

我是C ++的新手,对数组有疑问。我按如下方式初始化二维数组:

int myArray[2][2] = { {1,2},{3,4} };

这种填充数组的技术是否仅适用于初始化?如果是这样,为什么会这样?

例如,如果我尝试以下操作,则会收到错误消息:

myArray[2][2] = { {2,4}, {6,8} };

由于

3 个答案:

答案 0 :(得分:1)

是的,该技术仅用于初始化。将其应用于分配时,您将收到错误消息。 在

myArray[2][2] = { {2,4}, {6,8} };

myArray [2] [2]只是myArray的元素,你不能用它来分配它。

答案 1 :(得分:1)

初始化数组时,您正在创建一个新的内存区域并在该内存区域中设置值。

分配时,您必须逐个设置值,例如myArray[1][0] = 6

答案 2 :(得分:-1)

你做过

myArray[2][2] = { {2,4}, {6,8} };

int myArray[2][2] = { {2,4}, {6,8} };

...

如果你提示

myArray[2][2] = { {2,4}, {6,8} };

您将进入数组的[2] [2]情况