47 #ifndef CCXX_POINTER_H_ 48 #define CCXX_POINTER_H_ 50 #ifndef CCXX_MISSING_H_ 54 #ifdef CCXX_NAMESPACES 73 if(ptrCount && --(*ptrCount)==0) {
82 explicit Pointer(T* ptr = NULL) : ptrObject(ptr)
84 ptrCount =
new unsigned;
120 {
return (*ptrCount == 1);};
123 {
return ++(*ptrCount);};
131 return --(*ptrCount);
135 #ifdef CCXX_NAMESPACES int operator++() const
Definition: pointer.h:122
virtual ~Pointer()
Definition: pointer.h:95
Pointer & operator=(const Pointer< T > &ref)
Definition: pointer.h:99
int operator--() const
Definition: pointer.h:125
substitute functions which may be missing in target platform libc.
Used to create and manage referece counted pointers.
Definition: pointer.h:65
T * operator->() const
Definition: pointer.h:116
T & operator*() const
Definition: pointer.h:110
void ptrDetach(void)
Definition: pointer.h:71
bool operator!() const
Definition: pointer.h:119
unsigned * ptrCount
Definition: pointer.h:68
Pointer(T *ptr=NULL)
Definition: pointer.h:82
T * getObject() const
Definition: pointer.h:113
Pointer(const Pointer< T > &ref)
Definition: pointer.h:88
T * ptrObject
Definition: pointer.h:69