Complete example:

#include <iostream>
#include <boost/utility.hpp>
#include <boost/ptr_container/ptr_vector.hpp>

struct Foo : boost::noncopyable
{
Foo() { std::cout << "made a Foo\n"; }
~Foo() { std::cout << "destroyed a Foo\n"; }
};

int main() {

boost::ptr_vector<Foo> foos;

foos.push_back(new Foo());
foos.push_back(new Foo());

foos.clear();

}

On 7 September 2017 at 11:28, Thorsten Ottosen via Boost-users <boost-users@lists.boost.org> wrote:
Den 07-09-2017 kl. 11:09 skrev Florian Lindner via Boost-users:
Hello,

in my project we have a simple ptr_vector that has a member function:

    void deleteElements ()
    {
       for ( CONTENT_T * elem : _content ) {
          assertion ( elem != NULL );
          delete ( elem );
       }
    }

I want to replace this ptr_vector with boost::ptr_vector. However, I haven't found a way to delete and free all pointers
stored in the container. How can I do that?

boost::ptr_vector<Foo> container;
...
container.clear()

kind regards

-Thorsten

_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users