c++面试三种智能指针
时间: 2023-10-01 15:12:18 浏览: 104
C++智能指针
在 C++ 中,智能指针是为了解决指针管理的问题而提出的一种方案。它通过 RAII(资源获取即初始化)技术自动管理内存资源,能够有效地免内存泄漏和野指针等问题。C++ 11 中引入了三种智能指针:
1. `unique_ptr`:独占式智能指针,不能被拷贝,只能移动,用于管理单个动态分配的对象。
2. `shared_ptr`:共享式智能指针,可以共享所有权,用于管理多个指向同一对象的指针。
3. `weak_ptr`:弱引用智能指针,不会增加对象的引用计数,主要用于解决 shared_ptr 的循环引用问题。
阅读全文