weak_ptr C++
时间: 2023-09-08 17:14:28 浏览: 84
C++11智能指针之weak_ptr详解
`weak_ptr`是C++11中引入的一种智能指针,它用于解决`shared_ptr`所存在的循环引用问题。`weak_ptr`指向一个由`shared_ptr`管理的对象,但是并不会增加该对象的引用计数。因此,当`shared_ptr`释放了该对象时,`weak_ptr`仍然可以访问该对象,但是如果试图通过`weak_ptr`访问已释放的对象,就会返回一个空指针。`weak_ptr`可以通过`lock`方法获取一个可用的`shared_ptr`,如果该`weak_ptr`指向的对象已经被释放,`lock`方法返回一个空的`shared_ptr`。
阅读全文