This class implements smart (reference-counted) pointers. More...
#include "Pointer.hpp"
Public Member Functions | |
| IntrusivePtrT (T *Ptr=0) | |
| The constructor. More... | |
| IntrusivePtrT (const IntrusivePtrT &IP) | |
| The copy constructor. More... | |
| template<class Y > | |
| IntrusivePtrT (const IntrusivePtrT< Y > &IP) | |
| The copy constructor (for Y classes that are derived from T). More... | |
| ~IntrusivePtrT () | |
| The destructor. More... | |
| IntrusivePtrT & | operator= (const IntrusivePtrT &IP) |
| The assignment operator. More... | |
| T * | get () const |
| Returns the stored pointer. More... | |
| T * | operator-> () const |
| The structure dereference operator. More... | |
| T & | operator* () |
| The dereference operator. More... | |
| const T & | operator* () const |
| The dereference operator (const). More... | |
| bool | operator== (const IntrusivePtrT &IP) const |
| The equality operator. More... | |
| template<class U > | |
| bool | operator== (U *b) const |
| bool | operator!= (const IntrusivePtrT &IP) const |
| The inequality operator. More... | |
| template<class U > | |
| bool | operator!= (U *b) const |
| bool | IsNull () const |
| A safe alternative for the bool conversion operator. More... | |
This class implements smart (reference-counted) pointers.
The implementation is intrusive: It requires from the class T that it is used with that it keeps a member m_RefCount that it can access either publicly or as a friend.
This class might be replaced by boost::intrusive_ptr<> at a later time.
|
inline |
The constructor.
|
inline |
The copy constructor.
|
inline |
The copy constructor (for Y classes that are derived from T).
|
inline |
The destructor.
|
inline |
Returns the stored pointer.
|
inline |
A safe alternative for the bool conversion operator.
For details, see:
|
inline |
The inequality operator.
|
inline |
The dereference operator.
|
inline |
The dereference operator (const).
|
inline |
The structure dereference operator.
|
inline |
The assignment operator.
|
inline |
The equality operator.