¿Cómo inicializar un shared_ptr que es miembro de una clase?
No estoy seguro de una buena manera de inicializar unshared_ptr
ese es un miembro de una clase. ¿Puedes decirme si la forma en que elijoC::foo()
está bien o hay una solución mejor?
class A
{
public:
A();
};
class B
{
public:
B(A* pa);
};
class C
{
boost::shared_ptr<A> mA;
boost::shared_ptr<B> mB;
void foo();
};
void C::foo()
{
A* pa = new A;
mA = boost::shared_ptr<A>(pa);
B* pB = new B(pa);
mB = boost::shared_ptr<B>(pb);
}