博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
智能指针 unique_ptr
阅读量:2383 次
发布时间:2019-05-10

本文共 675 字,大约阅读时间需要 2 分钟。

定义

unique_ptr 是 C++ 11 提供的用于防止内存泄漏的智能指针中的一种实现,独享被管理对象指针所有权的智能指针。

int main(){    std::unique_ptr
num(new int(23)); cout << *num << endl; return 0;}

move和get

std::move是将对象的状态或者所有权从一个对象转移到另一个对象,只是转移,没有内存的搬迁或者内存拷贝所以可以提高利用效率,改善性能.。

get函数会返回存储的指针。如果由unique_ptr不为空,则存储的指针指向由unique_ptr管理的对象,否则指向nullptr。

#include
#include
#include
#include
#include
#include
#include
using namespace std;int main(){ unique_ptr
num(new int(23)); cout<<"value="<<*num<<" "<<" addr="<
<
num1=move(num); cout<<"value="<<*num1<<" "<<" addr="<
<

运行结果:

value=23  addr=0x5583e82e2e70value=23  addr=0x5583e82e2e70

get函数

转载地址:http://oafab.baihongyu.com/

你可能感兴趣的文章
java 开发环境配置
查看>>
java bufferedreader 与inputstream的区别
查看>>
Jsp页面Word文档的生成
查看>>
Tomcat数据源配置
查看>>
Tomcat部署Web应用
查看>>
Maven使用小结
查看>>
Oracle的导入导出
查看>>
抽象工厂模式
查看>>
享元模式
查看>>
解释器模式
查看>>
代理模式
查看>>
单例模式
查看>>
状态模式
查看>>
leetcode 409 最长回文串(字符哈希)
查看>>
leetcode 290 单词规律(哈希映射)
查看>>
leetcode 49 字母异位词分组(哈希映射map)
查看>>
leetcode 3 无重复字符的最长子串(双指针维持滑动窗口)
查看>>
leetcode 187 重复的DNA序列(哈希or+位运算解决)
查看>>
leetcode 76 最小窗口子串
查看>>
leetcode 70 爬楼梯(动态规划)
查看>>