假设我们有以下组成一个 10 x 10 二维数组并将第一个单元格设置为 100:
class twoD{
int **p = new int*[10];
public:
twoD(){
*p = new int[10];
p[0][0] = 100;
}
};
为什么下面的不是这样。
class twoD{
int **p = new int*[10];
*p = new int[10];
public:
twoD(){
p[0][0] = 100;
}
};
最佳答案
因为在第二种情况下“*p = new int[10];”不是变量声明,因此不能在类定义中。
关于c++ - 作为类成员变量的指针/类中的动态内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27520364/