class Graph {
private:
int n;
Head* array;
Graph(int n)
{
this->n = n;
array = new Head[n];
for (int i = 0; i < n; i++)
{
array[i].head->vertex = i;
}
}
};
声明第一个Head *数组时,它将在堆栈中完成。然后再次使用构造函数内部的new关键字将其分配给堆。
我想了解这是否与我们编写的内容相同:Head* array = new Head[n];
如果是,那么这是在类中声明成员变量的标准方法吗?还是因为创建对象时首先调用构造函数,所以如果成员变量不在构造函数中就不设置成员变量吗?