[ glorius @ 04.08.2010. 21:51 ] @
Da li ovaj kod prouzrokuje cycle i ako da kako resiti problem ( napominjem da moram koristiti shared_ptr, mogu i weak_ptr za break cycle ali ne znam kako ) Code: #include <boost/shared_ptr.hpp> #include <boost/enable_shared_from_this.hpp> #include <list> class SomeClass : public boost::enable_shared_from_this<SomeClass> { public: SomeClass() {} ~SomeClass() {} void setParent(boost::shared_ptr<SomeClass> pParent); boost::shared_ptr<SomeClass> m_pParent; std::list<boost::shared_ptr<SomeClass> > m_listChildren; }; void SomeClass::setParent(boost::shared_ptr<SomeClass> pParent) { m_pParent = pParent; m_pParent->m_listChildren.push_back(shared_from_this()); } |