int** a = new int*[n]();
我找不到对这段代码的任何解释,我找到的都是对以下代码的解释 int *array = new int[n];
. 我明白了,但我不能完全理解上面的代码。它是什么意思?
你(应该)知道的。int *a = new int[n];
分配一个 int
的尺寸 n
.
所以,总的来说。T *a = new T[n];
分配一个 T
的尺寸 n
.
现在如果你用 T = int *
,你会得到 int **a = new int*[n];
的数组,它分配了一个 int *
的指针(即指向 int
).
增加 ()
右边的指针将数组中的每个指针清零(否则它们将被未初始化)。
创建一个指向大小为n的数组的指针,其中每个条目都是指向整数的指针。
你会得到一个指针数组