网站域名更换是怎么做的,自己做的网站放到首页,安卓市场app下载安装,在线 建站单页面网站带后台智能指针#xff0c;自动释放所指向的对象。
头文件
#include memoryshared_ptr 允许多个指针指向同一个对象 unique_ptr 独占所指向的对象 weak_ptr 指向shared_ptr所管理的对象
作用原理#xff1a;在函数作用域结束时调用析构函数自动释放资源。
shared_ptr: …智能指针自动释放所指向的对象。
头文件
#include memoryshared_ptr 允许多个指针指向同一个对象 unique_ptr 独占所指向的对象 weak_ptr 指向shared_ptr所管理的对象
作用原理在函数作用域结束时调用析构函数自动释放资源。
shared_ptr: 共享指针会通过计数器记录有多少个指针指向同一资源可通过use_count()查看有多少个指针指向同一资源。 创建智能指针必须指定数据类型shared_ptr p1;
动态创建对象 注意
stared_ptrint p new int(10); //错误写法这是错的接受指针参数的智能指针构造函数是 explicit 的因此我们不能将一个内置指针隐式的转换为一个智能指针必须使用直接初始化形式。
shared_ptrint p2(new int(1024)); //正确写法一些案例
递增递减问题
cout r.use_count() endl; //3
p.get() //获取指针地址如shared_ptrint p(new int(10)); p.get()获取的是指向new int(10)地址也即获取这个指针auto q p.get(); 相当于auto q new int(10);
p.reset() //p指针不在指向这个内存资源数减1unique_ptr指针 unique_ptr实现独占式拥有或严格拥有概念保证同一时间内只有一个智能指针可以指向该对象。它对于避免资源泄露(例如“以new创建对象后因为发生异常而忘记调用delete”)特别有用。