C++ 智能指针
来源:互联网 发布:mac os x dmg怎么安装 编辑:程序博客网 时间:2024/06/07 23:31
C++ 11 主要有3个智能指针std::unique_ptr、std::shared_ptr和std::weak_ptr
Std::unique_ptr 是唯一智能指针,不能够赋值。但是能够通过move函数转移指针指向的对象,被move后原指针则不再指向托管对象
因此,当需要智能指针用于纯 C++对象时,可使用 unique_ptr,而当构造unique_ptr时,可使用 make_unique Helper函数。
Std::shared_ptr 是可以共享的智能指针,通过引用计数的方式记录指针对象被引用的次数。当进行赋值时,2个共享智能指针指向同一个内存块,引用计数增加。当引用计数为零时,才会删除内存控制块
Std:week_ptr: 是辅助shared_ptr的指针,因为它不具有普通指针的行为,没有重载operator*和->,但可以使用lock获得一个可用的shared_ptr对象,它的最大作用在于协助shared_ptr工作,像旁观者那样观测资源的使用情况.
阅读全文
0 0
- c++:智能指针
- C++:智能指针
- 【C++】智能指针
- 【C++】智能指针
- C++PJ智能指针
- 【c++】智能指针
- 【C++】智能指针auto_ptr
- C++,智能指针
- C++,boost智能指针
- 智能指针模拟C
- [C++]智能指针
- 【C++】 浅析智能指针
- C++_智能指针
- C++:初识智能指针
- C++::智能指针
- 【C++】智能指针
- c智能指针:unique_ptr
- 【C++】智能指针
- Linux学习笔记
- 中缀表达式转为后缀表达式
- python利用setsockopt获得端口重用
- java实现贪吃蛇游戏
- Java日记(1 1)—— 布局管理器
- C++ 智能指针
- 数据结构——第一讲、基本概念(2)
- 1016. 部分A+B (15)
- jQuery--8.ajax
- session和cookie的区别和联系
- Android 中LayoutInflater(布局加载器)系列博文说明
- Maven入门-1-Maven简介
- oracle分页查询
- XGBoost模型跟Logistic Regression模型的本质区别