|
Boost Users : |
Subject: [Boost-users] Reference count in shared_ptr
From: Daniele Barzotti (daniele.barzotti_at_[hidden])
Date: 2009-10-01 10:36:44
Hi,
I've a doubt about shared_ptr...
Suppose to have something like this:
template
class Interface {..pure virtual..}
template
class Impl1 : public Interface {....}
template
class Impl2 : public Interface {....}
class A
{
public:
Interface* GetObjPtr() { return &obj; }
private:
Impl2 obj;
};
class B
{
~B()
{
delete a_ptr;
}
B()
{
a_ptr = new A;
Int_ptr.reset( a_ptr->GetObjPtr );
}
private:
A* a_ptr;
shared_ptr< Interface > Int_ptr;
};
Where B creates and use A on its internal.
In this case, is 'delete' called twice for Impl2?
(When A is destroyed and when B, and its shared_ptr, is destroyed).
Thanks,
Daniele.
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