【发布时间】:2012-12-14 09:50:28
【问题描述】:
我对@987654322@ 有疑问。
我在析构函数中看到了这一点(ptr 是 boost::shared_ptr):
ptr = boost::shared_ptr< int >( new int ).
这样好吗?不应该是ptr.reset(),就像这里所说的:How to intentionally delete a boost::shared_ptr?
干杯!
【问题讨论】:
-
您有疑问吗?在有疑问的地方,让我播种信念:没关系。
-
嗨,神圣的先知!为什么这比致电
reset()更好?还是口味问题?谢谢!。 -
不是更好,而是更糟。当然,除非您确实想使用新的 int。
-
好的!!。谢谢!。如何将其发布为答案以便我接受? :)
-
@AdriC.S.:不是更好,但也不是不正确。智能指针类(或 any 健全的库代码)的要点是,您不能通过使用其正常接口来破坏任何东西。智能指针的分配非常好(尽管
reset更清晰、更直接)。
标签: c++ shared-ptr