diff options
Diffstat (limited to 'include/m_system_cpp.h')
-rw-r--r-- | include/m_system_cpp.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/m_system_cpp.h b/include/m_system_cpp.h index 5815e410a4..76556160a6 100644 --- a/include/m_system_cpp.h +++ b/include/m_system_cpp.h @@ -42,9 +42,11 @@ template<class T> class mir_ptr T* data;
public:
+ __inline mir_ptr() : data((T*)mir_calloc(sizeof(T))) {}
__inline mir_ptr(T* _p) : data(_p) {}
__inline ~mir_ptr() { mir_free(data); }
__inline T* operator= (T* _p) { if (data) mir_free(data); data = _p; return data; }
+ __inline T* operator->() const { return data; }
__inline operator T*() const { return data; }
__inline operator INT_PTR() const { return (INT_PTR)data; }
};
|