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

搭建网站是什么意思岳阳市城市建设投资公司网站

搭建网站是什么意思,岳阳市城市建设投资公司网站,商务网站设计报告,微信saas平台智能指针的循环引用 是什么 怎么引起的 智能指针的循环引用#xff08;Circular Reference#xff09;是指两个或多个对象之间的共享指针相互引用#xff0c;导致这些对象永远不会被释放#xff0c;从而引发内存泄露。主要发生在使用std::shared_ptr时#xff0c;因为它们… 智能指针的循环引用 是什么 怎么引起的 智能指针的循环引用Circular Reference是指两个或多个对象之间的共享指针相互引用导致这些对象永远不会被释放从而引发内存泄露。主要发生在使用std::shared_ptr时因为它们使用引用计数来管理对象的生命周期当出现循环引用时引用计数不会降为零从而导致内存永远不会被释放。 循环引用的示例 以下是一个示例展示了如何使用std::shared_ptr引起循环引用 #include iostream #include memoryclass B; // 前向声明class A { public:std::shared_ptrB bPtr;~A() { std::cout A destroyed std::endl; } };class B { public:std::shared_ptrA aPtr;~B() { std::cout B destroyed std::endl; } };int main() {std::shared_ptrA a std::make_sharedA();std::shared_ptrB b std::make_sharedB();a-bPtr b;b-aPtr a;return 0; }在这个示例中类A和类B各自持有一个指向对方的std::shared_ptr。在main函数中a和b共享指针相互引用从而形成了循环引用。 循环引用的影响 由于循环引用A和B的析构函数不会被调用导致内存泄露。引用计数机制无法检测到这些对象不再需要因此不会释放它们。 解决循环引用的方法 使用std::weak_ptr可以解决循环引用的问题。std::weak_ptr是一种弱引用它不影响引用计数因此不会阻止对象被释放。 下面是使用std::weak_ptr解决循环引用的示例 #include iostream #include memoryclass B; // 前向声明class A { public:std::shared_ptrB bPtr;~A() { std::cout A destroyed std::endl; } };class B { public:std::weak_ptrA aPtr; // 使用std::weak_ptr代替std::shared_ptr~B() { std::cout B destroyed std::endl; } };int main() {std::shared_ptrA a std::make_sharedA();std::shared_ptrB b std::make_sharedB();a-bPtr b;b-aPtr a;return 0; }在这个示例中B类中的aPtr使用std::weak_ptr因此不会增加引用计数从而避免了循环引用。当a和b超出作用域时它们会正确地被释放。 总结 循环引用两个或多个对象相互引用导致引用计数永远不会降为零导致内存泄露。引起的原因使用std::shared_ptr时如果两个对象持有对方的std::shared_ptr就会形成循环引用。解决方法使用std::weak_ptr代替std::shared_ptr避免增加引用计数从而打破循环引用。 通过理解和正确使用std::weak_ptr可以有效地避免智能指针的循环引用问题确保对象能够被正确释放。 智能指针介绍介绍智能指针介绍
http://www.hkea.cn/news/14368915/

相关文章:

  • 尚义网站建设wl17581青岛建站模板制作
  • 久治县网站建设公司在线视频链接生成器
  • 湖南做网站 x磐石网络pc做网站服务器
  • 爱站库app小程序定制平台
  • 网站整套模板写作的网站哪个好
  • 免费网站后台模板网页制作基础教程图片
  • 优质手机网站建设哪家好济南网站设计哪家好
  • 注册网站法律风险网络业务
  • 旅游网站建设技术有哪些方面个体工商户可以搞网站建设
  • 做网站站长一年能赚多少钱城乡和住房建设厅网站首页
  • 自己做网站推广费用大做的最好的理财网站
  • 商标注册申请入口泰安网站建设与优化
  • 在线买房网站建设 方案用dw做淘宝网站
  • 西安市市政建设网站船员专用网站开发建议
  • 西安新能源网站建设网站建设需要找工信部吗
  • 青州市网站建设济南行知网站制作
  • 中国光大国际建设工程公司网站网站文章推广
  • 网站设计网站优化公司用ps做的网站样图怎么切
  • 烟台企业建站系统模板微信网站开发公司电话
  • 做网页网站建站公司有哪些服务
  • 七彩建设集团官方网站网站加速打开
  • 高端html5网站建设织梦模板电商模板网站
  • 网站建设饱和了吗宜宾商城网站建设
  • 上海建设工程安全质量监督站网站一个网站服务器一年大概多少钱
  • 网站建设类论文导出wordpress数据库
  • 做游戏攻略网站赚钱吗扫图片识别图片原图
  • 山东省城乡与建设厅网站首页百度做公司网站有用吗
  • 微信公众号 做不了微网站吗在线平面设计工具
  • 秦皇岛市网站建设手机网站引导页js插件
  • 在线制作插画网站互联网+创业项目