【发布时间】:2011-02-26 11:11:08
【问题描述】:
class Object { };
Class Derived : public Object { };
boost::shared_ptr<Object> mObject(new Derived); // Ok
但是如何将其转换为boost::shared_ptr<Derived>?
我尝试了类似:static_cast< boost::shared_ptr<Derived> >(mObject),但失败了。
唯一可行的想法是:
boost::shared_ptr<Derived> res(new dynamic_cast<Derived*>(mObject.get()))
【问题讨论】:
标签: c++ boost casting shared-ptr