How do you delete a pointer to an array?
--C++angel
How do you delete a pointer to an array?
--C++angel
delete[]
EDIT: Sorry if I was vague
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
Last edited by Shamino; 03-09-2006 at 10:52 PM.
Sometimes I forget what I am doing when I enter a room, actually, quite often.
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.
Code:#include <cmath> #include <complex> bool euler_flip(bool value) { return std::pow ( std::complex<float>(std::exp(1.0)), std::complex<float>(0, 1) * std::complex<float>(std::atan(1.0) *(1 << (value + 2))) ).real() < 0; }