Ik heb de volgende klas
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;
}
Vertel me alsjeblieft hoe ik dynamisch een array van pointers in de constructor kan toewijzen — de grootte van deze array zou maxsize zijn.
Antwoord 1, autoriteit 100%
Node::Node(int maxsize,int k)
{
NPtr = new Node*[maxsize];
}
Maar zoals gewoonlijk ben je waarschijnlijk beter af met een std::vector van pointers.
Antwoord 2, autoriteit 50%
Stel dat je een matrix van 3 rijen en 4 kolommen wilt maken,
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
}
Antwoord 3, autoriteit 17%
Dat wordt Nptr = new Node*[maxsize];
Vergeet ook niet om delete[]
in destructor te gebruiken.