Simplified implementation of std::unique_ptr. More...
Public Types | |
typedef T | element_type |
Object type for this unique_ptr. | |
typedef Deleter | deleter_type |
Deleter type for this unique_ptr. | |
typedef T * | pointer |
Pointer type of object in this unique_ptr. | |
Public Member Functions | |
unique_ptr () noexcept | |
unique_ptr (pointer pObject) noexcept | |
unique_ptr (unique_ptr &&rInput) noexcept | |
unique_ptr & | operator= (unique_ptr &&rInput) noexcept |
~unique_ptr () | |
Dispose of the object. | |
unique_ptr & | operator= (pointer pObject) noexcept |
pointer | release () noexcept |
void | reset (pointer pObject) noexcept |
void | reset (void) noexcept |
pointer | get () const noexcept |
deleter_type & | get_deleter () noexcept |
const deleter_type & | get_deleter () const noexcept |
operator bool () const noexcept | |
element_type & | operator* () const noexcept |
pointer | operator-> () const noexcept |
Protected Attributes | |
pointer | m_pObject |
Pointer to the object to track. | |
deleter_type | m_Deleter |
Instance of the deleter object. | |
Private Member Functions | |
unique_ptr (const unique_ptr &)=delete | |
unique_ptr & | operator= (const unique_ptr &)=delete |
Simplified implementation of std::unique_ptr.
Burger::unique_ptr is a smart pointer that owns and manages a pointer to an object and disposes of the object when this class goes out of scope.
This class is based on std::unique_ptr
T | Type of object to maintain a pointer to. |
Deleter | Type of object to delete the object. |
Deleter Burger::unique_ptr< T, Deleter >::deleter_type |
Deleter type for this unique_ptr.
T Burger::unique_ptr< T, Deleter >::element_type |
Object type for this unique_ptr.
T* Burger::unique_ptr< T, Deleter >::pointer |
Pointer type of object in this unique_ptr.
|
inlinenoexcept |
|
inlinenoexcept |
|
privatedelete |
|
inlinenoexcept |
|
inline |
Dispose of the object.
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
privatedelete |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
protected |
Instance of the deleter object.
|
protected |
Pointer to the object to track.