auto_ptr(c++98)、unique_ptr(C++11)、shared_ptr(c++11)、weak——ptr(c++11),帮助我们进行动态分配对象(new)出来的生命周期管理。能够有效防止内存泄漏。目前auto_pr已经完全被unique_ptr取代。
- shared_ptr:共享式指针。多个指向同一个对象,最后一个指针被销毁时,这个对象就会被释放。weak_ptr是辅助shared_ptr工作的。
- unique_ptr:独占式指针。同一时间内,只有一个指针能够指向该对象。
make_shared函数:标准库的函数模板,安全、高效分配和使用shared_ptr;