是否有一种方法,首先用nullptr初始化shared_ptr,并在一段时间后指派一个指向它的类的指针?分配给shared_ptr,有没有办法做到这一点?
//pseudo code
std::shared_ptr<MyClass> ptr(nullptr);
//and later
ptr->assign(new MyClass);
是否有一种方法,首先用nullptr初始化shared_ptr,并在一段时间后指派一个指向它的类的指针?分配给shared_ptr,有没有办法做到这一点?
//pseudo code
std::shared_ptr<MyClass> ptr(nullptr);
//and later
ptr->assign(new MyClass);
std::shared_ptr<MyClass> ptr;
ptr.reset(new MyClass);
也许并不那样有效调用复位,但是这也应该工作。创建shared_ptr的内联临时实例并分配它。
std::shared_ptr<MyClass> ptr;
ptr = std::shared_ptr<MyClass>(new MyClass);
看看这个:http://codepad.org/1N84El9d – John 2012-01-11 14:14:03