|
Pottu
|
Handle for a resource derived from SharedResource. More...
#include <memory.hpp>
Public Member Functions | |
| SharedResourceHandle (R *p, Deleter deleter=Deleter{}) | |
| SharedResourceHandle (const SharedResourceHandle &o) | |
| SharedResourceHandle (SharedResourceHandle &&o) | |
| SharedResourceHandle & | operator= (SharedResourceHandle o) noexcept |
| SharedResourceHandle & | operator= (SharedResourceHandle &&o) noexcept |
| operator bool () const noexcept | |
| R & | operator* () const noexcept |
| R * | operator-> () const noexcept |
| R * | get () const noexcept |
Public Attributes | |
| R * | _p |
| Deleter | _deleter |
Friends | |
| void | swap (SharedResourceHandle &h1, SharedResourceHandle &h2) noexcept |
Handle for a resource derived from SharedResource.
Template parameter R is the resource and Deleter is a functor to be called (operator()) when the resource is not used any more.
Deleter must have the default constructor defined. However, the operator(), should be defined to do something sensible also in the case when the deleter is created with the default constructor.