我有以下课程
class Node
{
int key;
Node**Nptr;
public:
Node(int maxsize,int k);
};
Node::Node(int maxsize,int k)
{
//here i want to dynamically allocate the array of pointers of maxsize
key=k;
}
请告诉我如何在构造函数中动态分配指针数组 - 此数组的大小为maxsize。
答案 0 :(得分:10)
Node::Node(int maxsize,int k)
{
NPtr = new Node*[maxsize];
}
但像往常一样,你最好使用std ::指针向量。
答案 1 :(得分:3)
假设您要创建3行和4列的矩阵,
int **arr = new int * [3]; //first allocate array of row pointers
for(int i=0 ; i<rows ; ++i)
{
arr[i] = new int[4]; // allocate memory for columns in each row
}
答案 2 :(得分:2)
那将是Nptr = new Node*[maxsize];
另外,请记住在析构函数中使用delete[]
。