boost::shared_ptr
,std::tr1::shared_ptr
和即将到来的 (in C++0x
)之间有什么区别std::shared_ptr
吗?
从一个移植到另一个会有任何开销还是它们基本相同?
boost::shared_ptr
,std::tr1::shared_ptr
和即将到来的 (in C++0x
)之间有什么区别std::shared_ptr
吗?
从一个移植到另一个会有任何开销还是它们基本相同?
根据 Boost 网站,boost::shared_ptr
...
...符合 TR1 规范,唯一的例外是它驻留在命名空间
boost
而不是std::tr1
.
根据维基百科C++0x页面
TR1 实现缺少某些指针特性,例如别名和指针算法,但 C++0x 版本将添加这些特性。
如果您的代码适用于 TR1/Boost 版本,它应该适用于 C++0x 版本(但不一定反之亦然)。