H A D | shared_ptr.hpp | 5 // shared_ptr.hpp 14 // See http://www.boost.org/libs/smart_ptr/shared_ptr.htm for documentation. 57 template<class T> class shared_ptr; 101 template< class X, class Y, class T > inline void sp_enable_shared_from_this( boost::shared_ptr<X> const * ppx, Y const * py, boost::enable_shared_from_this< T > const * pe ) 109 template< class X, class Y, class T > inline void sp_enable_shared_from_this( boost::shared_ptr<X> * ppx, Y const * py, boost::enable_shared_from_this2< T > const * pe ) 157 // shared_ptr 160 // The object pointed to is deleted when the last shared_ptr pointing to it 164 template<class T> class shared_ptr class in namespace:boost 169 typedef shared_ptr<T> this_type; 178 shared_ptr() function in class:boost::shared_ptr 183 explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete function in class:boost::shared_ptr 194 template<class Y, class D> shared_ptr(Y * p, D d): px(p), pn(p, d) function in class:boost::shared_ptr 201 template<class Y, class D, class A> shared_ptr( Y * p, D d, A a ): px( p ), pn( p, d, a ) function in class:boost::shared_ptr 212 shared_ptr( shared_ptr const & r ): px( r.px ), pn( r.pn ) // never throws function in class:boost::shared_ptr 219 explicit shared_ptr(weak_ptr<Y> const & r): pn(r.pn) // may throw function in class:boost::shared_ptr 226 shared_ptr( weak_ptr<Y> const & r, boost::detail::sp_nothrow_tag ): px( 0 ), pn( r.pn, boost::detail::sp_nothrow_tag() ) // never throws function in class:boost::shared_ptr 237 shared_ptr( shared_ptr<Y> const & r, typename boost::detail::sp_enable_if_convertible<Y,T>::type = boost::detail::sp_empty() ) function in class:boost::shared_ptr 250 shared_ptr( shared_ptr<Y> const & r, T * p ): px( p ), pn( r.pn ) // never throws function in class:boost::shared_ptr 255 shared_ptr(shared_ptr<Y> const & r, boost::detail::static_cast_tag): px(static_cast<element_type *>(r.px)), pn(r.pn) function in class:boost::shared_ptr 260 shared_ptr(shared_ptr<Y> const & r, boost::detail::const_cast_tag): px(const_cast<element_type *>(r.px)), pn(r.pn) function in class:boost::shared_ptr 265 shared_ptr(shared_ptr<Y> const & r, boost::detail::dynamic_cast_tag): px(dynamic_cast<element_type *>(r.px)), pn(r.pn) function in class:boost::shared_ptr 274 shared_ptr(shared_ptr<Y> const & r, boost::detail::polymorphic_cast_tag): px(dynamic_cast<element_type *>(r.px)), pn(r.pn) function in class:boost::shared_ptr 285 explicit shared_ptr(std::auto_ptr<Y> & r): px(r.get()), pn() function in class:boost::shared_ptr 295 explicit shared_ptr( Ap r, typename boost::detail::sp_enable_if_auto_ptr<Ap, int>::type = 0 ): px( r.get() ), pn() function in class:boost::shared_ptr 353 shared_ptr( shared_ptr && r ): px( r.px ), pn() // never throws function in class:boost::shared_ptr 362 shared_ptr( shared_ptr<Y> && r, typename boost::detail::sp_enable_if_convertible<Y,T>::type = boost::detail::sp_empty() ) function in class:boost::shared_ptr [all...] |