Fra*_*ank 72 c++ boost shared-ptr static-cast
什么是一个相当于static_cast
用boost::shared_ptr
?
换句话说,我该如何重写以下内容
Base* b = new Derived();
Derived* d = static_cast<Derived*>(b);
Run Code Online (Sandbox Code Playgroud)
什么时候用shared_ptr
?
boost::shared_ptr<Base> b(new Derived());
boost::shared_ptr<Derived> d = ???
Run Code Online (Sandbox Code Playgroud)
Fra*_*ank 105
用途boost::static_pointer_cast
:
boost::shared_ptr<Base> b(new Derived());
boost::shared_ptr<Derived> d = boost::static_pointer_cast<Derived>(b);
Run Code Online (Sandbox Code Playgroud)
Mic*_*fik 22
有三种类型转换操作符的智能指针:static_pointer_cast
,dynamic_pointer_cast
,和const_pointer_cast
.它们位于命名空间boost
(由提供者<boost/shared_ptr.hpp>
)或命名空间std::tr1
(由Boost或编译器的TR1实现提供).
归档时间: |
|
查看次数: |
40953 次 |
最近记录: |