STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
_Ref_count_del_alloc< _Ty, _Dx, _Alloc > Class Template Reference
Inheritance diagram for _Ref_count_del_alloc< _Ty, _Dx, _Alloc >:
_Ref_count_base

Public Types

typedef _Ref_count_del_alloc< _Ty, _Dx, _Alloc > _Myty
 
typedef _Alloc::template rebind< _Myty >::other _Myalty
 

Public Member Functions

 _Ref_count_del_alloc (_Ty *_Px, _Dx _Dt, _Myalty _Al)
 
virtual void_Get_deleter (const _XSTD2 type_info &_Typeid) const
 
- Public Member Functions inherited from _Ref_count_base
virtual ~_Ref_count_base () _NOEXCEPT
 
bool _Incref_nz ()
 
unsigned int _Get_uses () const
 
void _Incref ()
 
void _Incwref ()
 
void _Decref ()
 
void _Decwref ()
 
long _Use_count () const
 
bool _Expired () const
 

Private Member Functions

virtual void _Destroy ()
 
virtual void _Delete_this ()
 

Private Attributes

_Ty * _Ptr
 
_Dx _Dtor
 
_Myalty _Myal
 

Additional Inherited Members

- Protected Member Functions inherited from _Ref_count_base
 _Ref_count_base ()
 

Member Typedef Documentation

template<class _Ty , class _Dx , class _Alloc >
typedef _Alloc::template rebind<_Myty>::other _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Myalty
template<class _Ty , class _Dx , class _Alloc >
typedef _Ref_count_del_alloc<_Ty, _Dx, _Alloc> _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Myty

Constructor & Destructor Documentation

template<class _Ty , class _Dx , class _Alloc >
_Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Ref_count_del_alloc ( _Ty *  _Px,
_Dx  _Dt,
_Myalty  _Al 
)
inline
214  : _Ref_count_base(), _Ptr(_Px), _Dtor(_Dt), _Myal(_Al)
215  { // construct
216  }
_Ref_count_base()
Definition: memory:59
_Ty * _Ptr
Definition: memory:236
_Dx _Dtor
Definition: memory:237
_Myalty _Myal
Definition: memory:238

Member Function Documentation

template<class _Ty , class _Dx , class _Alloc >
virtual void _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Delete_this ( )
inlineprivatevirtual

Implements _Ref_count_base.

230  { // destroy self
231  _Myalty _Al = _Myal;
232  _Al.destroy(this);
233  _Al.deallocate(this, 1);
234  }
_Alloc::template rebind< _Myty >::other _Myalty
Definition: memory:211
_Myalty _Myal
Definition: memory:238
template<class _Ty , class _Dx , class _Alloc >
virtual void _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Destroy ( )
inlineprivatevirtual

Implements _Ref_count_base.

225  { // destroy managed resource
226  _Dtor(_Ptr);
227  }
_Ty * _Ptr
Definition: memory:236
_Dx _Dtor
Definition: memory:237
template<class _Ty , class _Dx , class _Alloc >
virtual void* _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Get_deleter ( const _XSTD2 type_info _Typeid) const
inlinevirtual

Reimplemented from _Ref_count_base.

219  { // return address of deleter object
220  return ((void *)(_Typeid == typeid(_Dx) ? &_Dtor : 0));
221  }
_Dx _Dtor
Definition: memory:237

Member Data Documentation

template<class _Ty , class _Dx , class _Alloc >
_Dx _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Dtor
private
template<class _Ty , class _Dx , class _Alloc >
_Myalty _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Myal
private
template<class _Ty , class _Dx , class _Alloc >
_Ty* _Ref_count_del_alloc< _Ty, _Dx, _Alloc >::_Ptr
private

The documentation for this class was generated from the following file: