Boost logo

Boost Users :

From: Caleb Epstein (caleb.epstein_at_[hidden])
Date: 2005-01-03 23:59:45


On Mon, 3 Jan 2005 14:29:43 -0800, Pablo Aguilar
<pablo.aguilar_at_[hidden]> wrote:
> Hi,
>
> I'm currently playing around with Apache's Xerces XML library, and found
> myself needing to ->release some pointers. shared_ptr + mem_fn works great:
>
> shared_ptr<DOMBuilder> db(
> impl->createBuilder()
> , mem_fn(&DOMBuilder::release)
> );
>
> But for the objects I'm using, I don't need a shared_ptr, but just a
> scoped_ptr. So I'm wondering about the rationale behind not giving
> scoped_ptr a custom deleter? Is it that shared_ptr's overhead is negligible
> (when not being shared I mean)?

I noticed same omission just the other day when working with libxml2.
I was forced to use shared_ptr when scoped_ptr would have made more
sense (localized transfer-of-memory ownership with a custom deleter).
I think it makes sense to add this to scoped_ptr, but perhaps the lack
of support is a design decision (overhead?)

-- 
Caleb Epstein
caleb dot epstein at gmail dot com

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net