当前位置: 首页 > news >正文

网站设置关键词阳谷网站建设价格

网站设置关键词,阳谷网站建设价格,dewplayer wordpress,短网址生成工具 请输入长网址: 缩短网址1. 起源 c++ 把内存的控制权对开发人员开放,让程序显式的控制内存,这样能够快速的定位到占用的内存,完成释放的工作。但是这样也会引发一些问题,也就是普通指针的隐患: 1.1 野指针 出现野指针的有几个地方 : 指针声明而未初始化,此时指针的将会随机指向内存已经被释放…1. 起源 c++ 把内存的控制权对开发人员开放,让程序显式的控制内存,这样能够快速的定位到占用的内存,完成释放的工作。但是这样也会引发一些问题,也就是普通指针的隐患: 1.1 野指针 出现野指针的有几个地方 : 指针声明而未初始化,此时指针的将会随机指向内存已经被释放、但是指针仍然指向它。这时内存有可能被系统重新分配给程序使用,从而会导致无法估计的错误 // 野指针int * p ;cout "p : " p endl;int * p2 = new int(20);delete p2;cout "p2 : " p2 endl;1.2 重复释放 释放已经释放过的内存,或者释放已经被重新分配过的内存,就会导致重复释放错误. //2. 重复释放int * p3 = new int(30);delete p3;delete p3; //重复delete 会报错。cout "p3 : " p3 endl;1.3 内存泄漏 不再使用的内存,并没有释放,或者忘记释放,导致内存没有得到回收利用。 忘记调用delete //3. 忘记释放了int * p4 = new int(40);2. 简介 C++智能指针是一种特殊类型的指针,其作用是管理动态分配的内存资源,以提供更安全和方便的内存管理。智能指针通过封装原始指针,并在适当的时候自动释放内存,从而避免内存泄漏和悬挂指针等问题。 c++11标准用 unique_ptr | shared_ptr | weak_ptr 等指针来自动回收堆中分配的内存。智能指针的用法和原始指针用法一样,只是它多了些释放回收的机制罢了。 2.1 原理 智能指针位于memory 头文件中,所以要想使用智能指针,还需要导入这个头文件 #includememory int * p = new int(10); unique_ptrint up(p);智能指针其实是一个类 , 它里面能够包装原始指针。 template typename _Tp, typename _Dp = default_delete_Tp class unique_ptr{}完整代码: #include iostream #includememoryusing namespace std;class Abstract{ public:Abstract(){cout "Abstract构造" endl;}~Abstract(){cout "Abstract析构" endl;} };void Construct_pointer(){Abstract * A = new Abstract;unique_ptrAbstract up0 (A);}int main() {cout "----------------------" endl;Construct_pointer();cout "----------------------" endl;return 0; }unique_ptr 的析构: ~unique_ptr() noexcept{auto __ptr = std::get0(_M_t);if (__ptr != nullptr)get_deleter()(__ptr);__ptr = pointer();}总结:使用智能指针的类在栈内存创建的对象,来包装原始指针。当智能指针的对象销毁了之后, 顺便也会销毁原始指针。智能指针并不是指针,只是包装了指针的类而已。 unique_ptrAbstract *up = new unique_ptrAbstract(A); delete up; //报错使用智能指针的类在堆内存创建的对象,来包装原始指针,会报错。 3. 智能指针 智能指针把裸指针包装起来,在构造函数里初始化,在析构函数里释放。这样当对象失效销毁时,C++ 就会自动调用析构函数,完成内存释放、资源回收等清理工作。它实践了 RAII(Resource Acquisition Is Initialization),包装了裸指针,而且因为重载了 * 和 - 操作符,用起来和原始指针一模一样。 3.1 unique_ptr unique_ptr 是一个独享所有权的智能指针,它提供了严格意义上的所有权。也就是只有这个指针能够访问这片空间,不允许拷贝
http://www.hkea.cn/news/14376609/

相关文章:

  • 昆山做网站好的wordpress 安装 插件
  • 网站建设公司的组织架构阜阳北京网站建设
  • 淘宝网客网站建设深圳工程项目
  • 住建部网站村镇建设管理平台用自己的电脑做网站划算
  • 个人网站空间多大合适网站空间面板
  • 盐城网站开发渠道合作学做烘培的网站
  • 建设银行信用卡官方网站住房建设部官方网站专家注册
  • 京东淘宝网站是怎么做的深圳市住房和建设局红色警示查询
  • 运动服饰网站建设目的网站建设服务器介绍图片
  • 广州外贸营销网站建设公司WordPress注册邮箱欢迎
  • 网站设计是做什么的客户开发软件工具
  • 网站开发 需要用到什么软件做网站用母版页不好么
  • 网站建设公司新报价男女明星直接做的视频网站
  • iis网站权限设置免费wordpress空间
  • 网站搭建价格长沙网上商城
  • 观点网站宁德住房和城乡建设部网站
  • 网站的全栈建设超市管理系统
  • 黔西南州网站建设公司网站图片太多
  • 做西班牙语网站取消网站备案号
  • 西安购物网站建设莆田网站建设技术托管
  • 太原整站优化肇庆seo服务方案
  • 刘涛给孩子网站做的广告沈阳人流价格
  • 动物网站建设策划书企业宣传模板
  • 对高校网站建设的期待江西网站建设价格低
  • 做调查的网站知乎网站视频插件怎么做
  • 如何申请一个网站空间晚上睡不着想看点正能量
  • 简约好看的网站模板招聘网58同城招聘
  • wordpress可以制作什么网站百度做广告多少钱
  • 城建公司建设网站基础资料深圳市中心房价
  • 西昌市住房与城乡建设厅网站毫州网站建设