Inherits P.
|
T * | get (void) const |
| Get pointer to object.
|
|
| object_pointer () |
| Create a pointer with no reference.
|
|
| object_pointer (T *object) |
| Create a pointer with a reference to a heap object.
|
|
| operator bool () |
| See if pointer is set.
|
|
bool | operator! () |
| See if pointer is not set.
|
|
T & | operator() () const |
| Reference object we are pointing to through function reference.
|
|
T * | operator* () const |
| Reference object we are pointing to through pointer indirection.
|
|
T * | operator++ () |
| Iterate our pointer if we reference an array on the heap.
|
|
void | operator-- () |
| Iterate our pointer if we reference an array on the heap.
|
|
T * | operator-> () const |
| Reference member of object we are pointing to.
|
|
void | operator= (T *typed) |
| Perform assignment operator to existing object.
|
|
template<class T, class P = auto_object>
class ucommon::object_pointer< T, P >
Typed smart pointer class.
This is used to manage references to a specific typed object on the heap that is derived from the base Object class. This is most commonly used to manage references to reference counted heap objects so their heap usage can be auto-managed while there is active references to such objects. Pointers are usually created on the stack frame and used to reference an object during the life of a member function. They can be created in other objects that live on the heap and can be used to maintain active references so long as the object they are contained in remains in scope as well.
- Author
- David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org
Definition at line 385 of file object.h.