static int (*g_data)[3];
我想new
的{{1}} N
元素。我只能这样做:
int[3]
我知道这没关系,使用g_data = (int(*)[3]) new int[N*3];
将是另一种解决方案。但是,为了好奇,我可以直接致电struct
new
,即没有类型转换吗?
答案 0 :(得分:5)
由于g_data
是指向3 int
的1D数组的指针,要制作N个这样的3个数组的数组,只需使用int [N][3]
:
g_data = new int[N][3];
答案 1 :(得分:1)
你可以这样做:
static int (*g_data)[3];
typedef int int_array[3];
g_data = new int_array[N];