在C ++ 11中,我们应该始终使用unique_ptr
或shared_ptr
代替new
/ delete
吗?性能如何,智能指针要慢得多?
答案 0 :(得分:7)
unique_ptr
不会(不应该)具有任何运行时开销。 shared_ptr
确实有一些内存和时间开销(多少取决于实现)。如果你真的需要像shared_ptr
这样的东西,那么实际开销很容易为零(也就是说,你认为没有其他任何实现更快或更高内存效率)
这并不是说你永远不会在代码中使用new / delete,但这不是你一直都会做的事情。
答案 1 :(得分:2)