9/23 Is the a C++ equivelent to the C realloc function?
\_ realloc(). But seriously, maybe you want an STL container
that automatically grows.
\_ Not in this case. I just need to grow a char array
automatically myself. (For speed reasons) Really, It's a
very isolated place in the code, and I'll probably just end
up switching the news and deletes to mallocs and frees, and
therefore use realloc when I need to grow the array. But I
was curious if there was an equivelent that would work with
new and delete.
\_ No, there is no equivalent for new/delete. You probably
should avoid using arrays and new/delete directly anyway.
It's hard to make it exception-safe. Either use an STL
container (e.g. vector or string; shrinking a vector
doesn't free memory to the system though) or write your
own container that uses malloc/free/realloc.
\_ If you need to do this for performance then you should avoid
new/delete, and especially STL containers. STL containers
require new elements to be default initialized, etc. I wrote
my own "pod_vector" for POD types that uses malloc/realloc
etc. for high performance. If you do this, it's important to
have unit tests. |