Subject: Re: [boost] scoped_ptr deleter
From: Frank Mori Hess (frank.hess_at_[hidden])
Date: 2009-09-15 09:25:33
-----BEGIN PGP SIGNED MESSAGE-----
On Tuesday 15 September 2009, Stewart, Robert wrote:
> Berserker wrote:
> > The "noncopyable nature" of scoped_ptr allows to support
> > deleters with simply an extra template
> > parameter (default value is boost::checked_deleter): this
> > change doesn't require extra memory
> > overhead (like in shared_ptr) and it consists of 2 lines.
> That change creates multiple, distinct classes.
> shared_ptr<T,boost::checked_deleter<T>> is not the same as
> shared_ptr<T,my_deleter<T>>. By embedding the deleter in the shared_ptr
> with type erasure, shared_ptr<T> is shared_ptr<T> is shared_ptr<T>,
> regardless of the deleter.
> > Any hope to apply this patch?
> None, unless I'm much mistaken.
There is nothing wrong with the design, it is just called unique_ptr. Also,
there is already a boost::interprocess::unique_ptr in boost which I've only
played with a little but seems to work ok. It is missing a default_delete
however. I imagine once boost gets a move library, boost::unique_ptr will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
-----END PGP SIGNATURE-----
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk