Quote Originally Posted by monarch_dodra View Post
That was an interesting read. The thread is old, but I think I'll chip in my two cents:

Why not use a boost::ptr_vector? Basically, it is a self-maintained container of pointers to objects, making all the requirements met by default.
The same reason C++ arrays aren't like Java arrays: we want to avoid extra allocations when not necessary.