31 #ifndef __CLAW_SMART_PTR_HPP__
32 #define __CLAW_SMART_PTR_HPP__
98 unsigned int* m_ref_count;
109 #endif // __CLAW_SMART_PTR_HPP__
smart_ptr()
Default constructor.
T * pointer
Pointer on the type of the stored data.
smart_ptr< value_type > self_type
The type of the current class.
T value_type
The type of the pointed data.
bool operator<(const self_type &that) const
"Less than" operator.
const T & const_reference
Constant reference on the type of the stored data.
pointer operator->()
Dereference operator.
~smart_ptr()
Destructor. The memory is freed only if no more smart_ptr point on it.
bool operator>(const self_type &that) const
"Greater than" operator.
const T *const const_pointer
Constant pointer on the type of the stored data.
Implementation of the claw::memory::smart_ptr class.
A pointer with a reference counter.
T & reference
Reference on the type of the stored data.
bool operator>=(const self_type &that) const
"Greater or equal" operator.
bool operator==(const self_type &that) const
Equality operator.
bool operator<=(const self_type &that) const
"Less or equal" operator.
self_type & operator=(const self_type &that)
Assignment operator.
bool operator!=(const self_type &that) const
Disequality operator.
reference operator*()
Dereference operator.