A helper class needed to construct smart pointers to objects, and does not allow explicit construction of objects.
More...
#include <SharedEntity.hpp>
|
template<typename... Args> |
static auto | createShared (Args &&...args) |
| Creates smart pointer to object.
|
|
|
using | Ptr = std::shared_ptr<SharedEntity> |
| The alias to a type of shared pointer to the SharedEntity object.
|
|
template<typename T > |
bool | is () const noexcept |
| Checks that pointer to the current type could be converted to type T* In other words: whether type T belongs to the type hierarchy in which the current type resides.
|
|
template<typename T > |
std::shared_ptr< T > | sharedAs () noexcept |
| Returns a pointer to the current object wrapped in a smart pointer to type T.
|
|
template<typename T > |
std::shared_ptr< T > | sharedAs () const noexcept |
| Returns a pointer to the current object wrapped in a smart pointer to type T.
|
|
virtual std::string | toString () const |
| Returns a string representation of the current object.
|
|
virtual | ~Entity () noexcept=default |
| The default virtual d-tor.
|
|
template<typename T>
struct RequireMakeShared< T >
A helper class needed to construct smart pointers to objects, and does not allow explicit construction of objects.
- Template Parameters
-
◆ createShared()
template<typename T >
template<typename... Args>
Creates smart pointer to object.
- Template Parameters
-
- Parameters
-
- Returns
- A new smart pointer to object.