6 using Ptr = std::shared_ptr<T>;
9 using CPtr =
const std::shared_ptr<T>;
12 using PtrC = std::shared_ptr<const T>;
15 using CPtrC =
const std::shared_ptr<const T>;
19 struct isPtr : std::false_type {};
30 template<
typename T,
typename... Args>
32 return std::make_shared<T>(std::forward<Args>(args)...);
std::shared_ptr< const T > PtrC
const std::shared_ptr< T > CPtr
const std::shared_ptr< const T > CPtrC
static Ptr< T > makePtr(Args &&...args)