33.unique_ptr独享内存智能指针

 1 #include <iostream>
 2 #include <memory>
 3 #include <string>
 4 #include <vector>
 5 using namespace std;
 6 
 7 //独享内存,其他指针不可以拥有
 8 void test1()
 9 {
10     //检测到没有调用的话就不分配内存
11     unique_ptr<int> p(new int[10]{ 0 });
12     //避免指针被反复使用
13     //删除了拷贝构造与赋值重载
14     //unique_ptr<int> p2(p);
15 
16     //显示释放内存
17     p.reset();
18 
19     //指针一旦被强制赋值,则原来的指针就失去了管理原来那片内存的权限
20     unique_ptr<int> p2 = move(p);
21 }
22 
23 void main()
24 {
25 
26     cin.get();
27 }

 

posted @ 2018-03-26 14:47  喵小喵~  阅读(116)  评论(0编辑  收藏  举报