C++(STL):04---智能指针之weak_ptr
生活随笔
收集整理的這篇文章主要介紹了
C++(STL):04---智能指针之weak_ptr
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、概念
weak_ptr是一種不控制所指向對象生存期的智能指針,它指向一個shared_ptr管理的對象
擁有“弱”共享的特點
最重要的特點
一個對象被多個shared_ptr類所指向時,就會擁有多個引用計數
但是當weak_ptr指向一個shared_ptr類所指向的對象時,該對象的引用計數不會增加
因此,當最后一個對象的最后一個shared_ptr類被釋放時,該對象會被釋放。即使此時仍有weak_ptr指向該對象,該對象的內存仍然會被釋放
二、weak_ptr類的基本使用
我們需要用一個shared_ptr類來初始化weak_ptr類
四、lock函數的使用
用來檢測weak_ptr所指的對象是否仍然存在,如果存在就繼續訪問,不存在則做相應的處理
返回值:
如果weak_ptr所指的shared_pre引用計數為0,返回一個空的shared_ptr
否則,返回一個shared_ptr對象
總結
以上是生活随笔為你收集整理的C++(STL):04---智能指针之weak_ptr的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Git(8)-分支
- 下一篇: Python的Pexpect详解 [图片