Public Member Functions | Private Member Functions | Private Attributes

PtrMan< T > Class Template Reference

a simple autopointer. More...

List of all members.

Public Member Functions

 PtrMan (T *p=0)
 ~PtrMan ()
PtrMan< T > & operator= (T *p)
T * ptr ()
 operator T * ()
 operator const T * () const
T * operator-> ()
const T * operator-> () const
T & operator* ()
PtrMan< T > & operator= (const PtrMan< T > &p)
bool operator! () const
void erase ()
void set (T *p, bool doerase=true)

Private Member Functions

PtrMan< T > & operator= (const T &p) const

Private Attributes

T * ptr_

Detailed Description

template<class T>
class PtrMan< T >

a simple autopointer.

It is assigned to a pointer, and takes over the responsibility for its deletion. For Arrays, use the ArrPtrMan class.


Constructor & Destructor Documentation

template<class T >
PtrMan< T >::PtrMan ( T *  p = 0  )  [inline]
template<class T >
PtrMan< T >::~PtrMan (  )  [inline]

Member Function Documentation

template<class T >
void PtrMan< T >::erase (  )  [inline]
template<class T >
PtrMan< T >::operator const T * (  )  const [inline]
template<class T >
PtrMan< T >::operator T * (  )  [inline]
template<class T >
bool PtrMan< T >::operator! (  )  const [inline]
template<class T >
T& PtrMan< T >::operator* (  )  [inline]
template<class T >
T* PtrMan< T >::operator-> (  )  [inline]
template<class T >
const T* PtrMan< T >::operator-> (  )  const [inline]
template<class T >
PtrMan<T>& PtrMan< T >::operator= ( const PtrMan< T > &  p  )  [inline]
template<class T >
PtrMan<T>& PtrMan< T >::operator= ( const T &  p  )  const [private]
template<class T >
PtrMan<T>& PtrMan< T >::operator= ( T *  p  )  [inline]
template<class T >
T* PtrMan< T >::ptr (  )  [inline]
template<class T >
void PtrMan< T >::set ( T *  p,
bool  doerase = true 
) [inline]

Member Data Documentation

template<class T >
T* PtrMan< T >::ptr_ [private]