c++智能指针
来源:互联网 发布:潘多拉 设置网络 编辑:程序博客网 时间:2024/05/16 07:43
shared_ptr的作用有如同指针,但会记录有多少个shared_ptrs共同指向一个对象。这便是所谓的引用计数(reference counting)。一旦最后一个这样的指针被销毁,也就是一旦某个对象的引用计数变为0,这个对象会被自动删除。
#include <memory>#include <iostream>using namespace std;int main(){auto sp1=make_shared<int>(5);cout<<"sp1.unique()=="<<boolalpha<<sp1.unique()<<endl;//unique返回指针的引用计数shared_ptr<int> sp2=sp1;cout<<"sp1.unique() == "<<boolalpha<<sp1.unique()<<endl;cout<<"sp1.use_count():"<<sp1.use_count()<<endl;//use_count返回该指针的引用计数cout<<"sp2.use_count():"<<sp2.use_count()<<endl;cout<<"sp1.get(): "<<sp1.get()<<endl;cout<<"sp2.get(): "<<sp2.get()<<endl;sp1.reset();//reset清除指针的引用计数cout<<"sp1.use_count(): "<<sp1.use_count()<<endl;cout<<"sp2.use_count(): "<<sp2.use_count()<<endl;shared_ptr<int> sp3(new int(10));cout<<*sp2<<endl;cout<<*sp3<<endl;sp2.swap(sp3);cout<<*sp2<<endl;cout<<*sp3<<endl;system("pause");return 0;}
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++】智能指针
- 什么是javascript闭包
- java 和 jsp 中弹出对话框的方法
- angular directive ngmodel with jquery ui datepicker
- Android 获取签名、公钥方法
- Java编码易疏忽的十个问题
- c++智能指针
- C# webbrowser Ajax call
- DB2锁详解
- 鼠标浮动过按钮实现立体按钮的效果哦,不需要用JS~~~纯CSS
- Java 连接池的工作原理
- 这破玩应还能在复杂点吗?
- Android 4.0源码下载,centos 6.4
- Eclipse调试Java的10个技巧
- C++和Objective-C混编(官方文档翻译)