9
Tôi muốn sử dụng các chức năng make_shared<T>
với một lớp học có nguồn gốc, như dưới đâyLàm thế nào để make_shared một lớp dẫn xuất?
class Base {
public:
typedef std::shared_ptr<Base> Ptr;
};
class Derived : public Base {};
Base::Ptr myPtr = std::make_shared(/* Derived() */);
Làm thế nào tôi có thể nói make_shared để xây dựng như một đối tượng?
tôi muốn tránh những cổ điển
Base::Ptr ptr = Base::Ptr(new Derived());
Để tận dụng các alloc đơn trong hàm make_shared.