C++动态分配

来源:百度知道 编辑:UC知道 时间:2024/06/25 20:59:26
class A
{
int *p;//label
public:
A(){p=new int[4][4];}//此处与label处无法配合;为什么?一定要这里是二维的,怎么办?
}

p定义成双指针 int **p;

p = new int*[4];
for (int i=0; i<4; i++)
{
p[i] = new int[4];
}

int **p;
这样就行了。

如果你是想要2维数组,当然定义的时候也用相应的指针类型
int **p;

当然也可以强制转换指针类型
p=(int*)(new int[4][4]);