虽然shared_ptr 被称作“智能指针”,能够在没有人使用指针时自动的释放掉相应的内存,但是它却并不是万能的。事实上,shared_ptr 的默认“deleter”的适用范围相当有限,不可能处理C++程序开发中所有的内存指针,所幸它允许我们使用自己定义的 deleter,毕竟自己分配的内存,自己总该知道怎么释放吧? 到这里其实也能看出,所...
正确使用智能指针的方式包括:直接管理内存new/delete,避免在智能指针的析构器中再次释放内存,使用自定义的删除器完成特殊的资源清理工作,以及适当地选择使用shared_ptr、unique_ptr或weak_ptr等。 智能指针是一个强大的工具,可以帮助开发者更好地管理内存资源,正确和适当的使用智能指针是非常重要的,否则可能会引发各种问...