Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

constPtr< _Tp, _Bt > Class Template Reference

Counted 'const _Tp *'. Support construction/assignment via dynamic_cast from constPtrBase<_Bt>. More...

#include <Rep.h>

Inheritance diagram for constPtr< _Tp, _Bt >:

constPtrBase< _Bt > RepPtrBase List of all members.

Public Member Functions

 constPtr (const _Tp *ptr=0)
 constPtr (const constPtr &rhs)
 constPtr (const constPtrBase< _Bt > &rhs)
constPtr & operator= (const _Tp *ptr)
constPtr & operator= (const constPtr &rhs)
constPtr & operator= (const constPtrBase< _Bt > &rhs)
 constPtr (const Ptr< _Tp, _Bt > &rhs)
 constPtr (const PtrBase< _Bt > &rhs)
constPtr & operator= (const Ptr< _Tp, _Bt > &rhs)
constPtr & operator= (const PtrBase< _Bt > &rhs)
const _Tp * operator-> () const
const _Tp & operator * () const

Protected Member Functions

virtual const Rep * refbase () const
virtual const _Bt * base () const

Private Attributes

RepPtrStore< const _Tp, const
_Bt > 
_ptr

Detailed Description

template<typename _Tp, typename _Bt = _Tp>
class constPtr< _Tp, _Bt >

Counted 'const _Tp *'. Support construction/assignment via dynamic_cast from constPtrBase<_Bt>.


Constructor & Destructor Documentation

template<typename _Tp, typename _Bt = _Tp>
constPtr< _Tp, _Bt >::constPtr (  const _Tp *  ptr = 0  )  [inline]
 

Constructor. From 'const _Tp *'. Defaults to NULL.

template<typename _Tp, typename _Bt = _Tp>
constPtr< _Tp, _Bt >::constPtr (  const constPtr< _Tp, _Bt > &  rhs  )  [inline]
 

CopyConstructor. From constPtr<_Tp,_Bt>.

template<typename _Tp, typename _Bt = _Tp>
constPtr< _Tp, _Bt >::constPtr (  const constPtrBase< _Bt > &  rhs  )  [inline]
 

Constructor. From constPtr<..,_Bt>, i.e. pointer to an object that inherits _Bt.

template<typename _Tp, typename _Bt = _Tp>
constPtr< _Tp, _Bt >::constPtr (  const Ptr< _Tp, _Bt > &  rhs  )  [inline]
 

Constructor. From nonconst Ptr<_Tp,_Bt>.

template<typename _Tp, typename _Bt = _Tp>
constPtr< _Tp, _Bt >::constPtr (  const PtrBase< _Bt > &  rhs  )  [inline]
 

Constructor. From nonconst Ptr<..,_Bt>, i.e. pointer to an object that inherits _Bt.


Member Function Documentation

template<typename _Tp, typename _Bt = _Tp>
virtual const _Bt* constPtr< _Tp, _Bt >::base (   )  const [inline, protected, virtual]
 

Required by inherited PtrBase.

Implements constPtrBase< _Bt >.

template<typename _Tp, typename _Bt = _Tp>
const _Tp& constPtr< _Tp, _Bt >::operator * (   )  const [inline]
 

Access the _Tp object (or SEGV if _ptr is NULL)

template<typename _Tp, typename _Bt = _Tp>
const _Tp* constPtr< _Tp, _Bt >::operator-> (   )  const [inline]
 

Access forwarded to the _Tp object (or SEGV if _ptr is NULL)

template<typename _Tp, typename _Bt = _Tp>
constPtr& constPtr< _Tp, _Bt >::operator= (  const PtrBase< _Bt > &  rhs  )  [inline]
 

Assign from nonconst Ptr<..,_Bt>, i.e. pointer to an object that inherits _Bt.

template<typename _Tp, typename _Bt = _Tp>
constPtr& constPtr< _Tp, _Bt >::operator= (  const Ptr< _Tp, _Bt > &  rhs  )  [inline]
 

Assign from nonconst Ptr<_Tp,_Bt>.

template<typename _Tp, typename _Bt = _Tp>
constPtr& constPtr< _Tp, _Bt >::operator= (  const constPtrBase< _Bt > &  rhs  )  [inline]
 

Assign from constPtr<..,_Bt>, i.e. pointer to an object that inherits _Bt.

template<typename _Tp, typename _Bt = _Tp>
constPtr& constPtr< _Tp, _Bt >::operator= (  const constPtr< _Tp, _Bt > &  rhs  )  [inline]
 

Assign from constPtr<_Tp,_Bt>.

template<typename _Tp, typename _Bt = _Tp>
constPtr& constPtr< _Tp, _Bt >::operator= (  const _Tp *  ptr  )  [inline]
 

Assign from 'const _Tp *'.

template<typename _Tp, typename _Bt = _Tp>
virtual const Rep* constPtr< _Tp, _Bt >::refbase (   )  const [inline, protected, virtual]
 

Required by inherited RepPtrBase.

Implements RepPtrBase.


Member Data Documentation

template<typename _Tp, typename _Bt = _Tp>
RepPtrStore<const _Tp,const _Bt> constPtr< _Tp, _Bt >::_ptr [private]
 

The 'const _Tp*'.


The documentation for this class was generated from the following file:
Generated on Fri Feb 24 00:30:02 2006 for liby2util by  doxygen 1.4.4