|
constexpr | shared_ptr () _NOEXCEPT |
|
template<class _Ux > |
| shared_ptr (_Ux *_Px) |
|
template<class _Ux , class _Dx > |
| shared_ptr (_Ux *_Px, _Dx _Dt) |
|
constexpr | shared_ptr (nullptr_t) _NOEXCEPT |
|
template<class _Dx > |
| shared_ptr (nullptr_t, _Dx _Dt) |
|
template<class _Dx , class _Alloc > |
| shared_ptr (nullptr_t, _Dx _Dt, _Alloc _Ax) |
|
template<class _Ux , class _Dx , class _Alloc > |
| shared_ptr (_Ux *_Px, _Dx _Dt, _Alloc _Ax) |
|
template<class _Ty2 > |
| shared_ptr (const shared_ptr< _Ty2 > &_Right, _Ty *_Px) _NOEXCEPT |
|
| shared_ptr (const _Myt &_Other) _NOEXCEPT |
|
template<class _Ty2 , class = typename enable_if<is_convertible<_Ty2 *, _Ty *>::value, void>::type> |
| shared_ptr (const shared_ptr< _Ty2 > &_Other) _NOEXCEPT |
|
template<class _Ty2 > |
| shared_ptr (const weak_ptr< _Ty2 > &_Other, bool _Throw=true) |
|
| shared_ptr (_Myt &&_Right) _NOEXCEPT |
|
template<class _Ty2 , class = typename enable_if<is_convertible<_Ty2 *, _Ty *>::value, void>::type> |
| shared_ptr (shared_ptr< _Ty2 > &&_Right) _NOEXCEPT |
|
template<class _Ux , class _Dx , class = typename enable_if<is_convertible< typename unique_ptr<_Ux, _Dx>::pointer, _Ty *>::value, void>::type> |
| shared_ptr (unique_ptr< _Ux, _Dx > &&_Right) |
|
template<class _Ux , class _Dx > |
_Myt & | operator= (unique_ptr< _Ux, _Dx > &&_Right) |
|
_Myt & | operator= (_Myt &&_Right) _NOEXCEPT |
|
template<class _Ty2 > |
_Myt & | operator= (shared_ptr< _Ty2 > &&_Right) _NOEXCEPT |
|
| ~shared_ptr () _NOEXCEPT |
|
_Myt & | operator= (const _Myt &_Right) _NOEXCEPT |
|
template<class _Ty2 > |
_Myt & | operator= (const shared_ptr< _Ty2 > &_Right) _NOEXCEPT |
|
void | reset () _NOEXCEPT |
|
template<class _Ux > |
void | reset (_Ux *_Px) |
|
template<class _Ux , class _Dx > |
void | reset (_Ux *_Px, _Dx _Dt) |
|
template<class _Ux , class _Dx , class _Alloc > |
void | reset (_Ux *_Px, _Dx _Dt, _Alloc _Ax) |
|
void | swap (_Myt &_Other) _NOEXCEPT |
|
_Ty * | get () const _NOEXCEPT |
|
add_lvalue_reference< _Ty >::type | operator* () const _NOEXCEPT |
|
_Ty * | operator-> () const _NOEXCEPT |
|
bool | unique () const _NOEXCEPT |
|
| operator bool () const _NOEXCEPT |
|
template<class _Ux > |
void | _Resetp0 (_Ux *_Px, _Ref_count_base *_Rx) |
|
constexpr | _Ptr_base () _NOEXCEPT |
|
| _Ptr_base (_Myt &&_Right) |
|
template<class _Ty2 > |
| _Ptr_base (_Ptr_base< _Ty2 > &&_Right) |
|
_Myt & | operator= (_Myt &&_Right) |
|
void | _Assign_rv (_Myt &&_Right) |
|
long | use_count () const _NOEXCEPT |
|
void | _Swap (_Ptr_base &_Right) _NOEXCEPT |
|
template<class _Ty2 > |
bool | owner_before (const _Ptr_base< _Ty2 > &_Right) const |
|
void * | _Get_deleter (const _XSTD2 type_info &_Typeid) const _NOEXCEPT |
|
_Ty * | _Get () const _NOEXCEPT |
|
bool | _Expired () const _NOEXCEPT |
|
void | _Decref () |
|
void | _Reset () |
|
template<class _Ty2 > |
void | _Reset (const _Ptr_base< _Ty2 > &_Other) |
|
template<class _Ty2 > |
void | _Reset (const _Ptr_base< _Ty2 > &_Other, bool _Throw) |
|
template<class _Ty2 > |
void | _Reset (_Ty *_Other_ptr, const _Ptr_base< _Ty2 > &_Other) |
|
void | _Reset (_Ty *_Other_ptr, _Ref_count_base *_Other_rep) |
|
void | _Reset (_Ty *_Other_ptr, _Ref_count_base *_Other_rep, bool _Throw) |
|
void | _Reset0 (_Ty *_Other_ptr, _Ref_count_base *_Other_rep) |
|
void | _Decwref () |
|
void | _Resetw () |
|
template<class _Ty2 > |
void | _Resetw (const _Ptr_base< _Ty2 > &_Other) |
|
template<class _Ty2 > |
void | _Resetw (_Ty2 *_Other_ptr, _Ref_count_base *_Other_rep) |
|