我想知道标准boost::shared_ptr
文件中找到的std::shared_ptr
和<memory>
之间是否存在任何差异。
答案 0 :(得分:19)
std::shared_ptr
是tr1::shared_ptr
的C ++ 0x形式,而boost boost::shared_ptr
的行为应该相同。
但是,在符合C ++ 0x标准的实现中,std::shared_ptr
应该/可能在shared_ptr
类上有更多的便利行为,如以下链接所述:
shared_ptr
是一个引用计数指针,它像普通的C ++数据指针一样尽可能地运行。 TR1实现缺少某些指针功能,如别名和指针算法,但C ++ 0x版本将添加这些功能。
虽然从快速粗略的一瞥,我没有在operator+
类型上看到shared_ptr
和类似的算术运算。