How do you delete a pointer to an array?
--C++angel
Printable View
How do you delete a pointer to an array?
--C++angel
delete[]
EDIT: Sorry if I was vague :D
anything you new with [] you have to delete with []..
I'm pretty sure that is the general rule of thumb
So if you have a pointer to an array..
and with that pointer you could do this pptr[]
you need to delete it like this
delete[] pptr[];
My syntax might be off, but the idea is there :)
just: delete [] pptr;
also, there are two reasons why it is extremely important to that syntax with arrays and *not* to use them on a single object:
1) most implementations hide a count of the array elements either in front of or at the end of the data bytes. using the above syntax on a single object could cause a runtime error since the library would be trying to access the count which would probably not be appended to a single object.
2) using the above syntax instructs the library to invoke the destructor on each element in the array.