9 SoRefPtr(
void) noexcept : ptr(NULL) { }
13 if (this->ptr) this->ptr->ref();
18 if (this->ptr) this->ptr->ref();
28 if (this->ptr) this->ptr->unref();
37 void reset(T * p = NULL)
43 T * get(
void)
const noexcept {
return this->ptr; }
44 T & operator*(
void)
const {
return *this->ptr; }
45 T * operator->(
void)
const noexcept {
return this->ptr; }
46 explicit operator bool(
void)
const noexcept {
return this->ptr != NULL; }
51 swap(this->ptr, other.ptr);