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

浙江怎么制作网站网站备案的要求是什么

浙江怎么制作网站,网站备案的要求是什么,ajax 效果网站,推广公司的套路Boost智能指针——shared_ptr boost::scoped_ptr虽然简单易用#xff0c;但它不能共享所有权的特性却大大限制了其使用范围#xff0c;而boost::shared_ptr可以解决这一局限。顾名思义#xff0c;boost::shared_ptr是可以共享所有权的智能指针#xff0c;首先让我们通过一…Boost智能指针——shared_ptr boost::scoped_ptr虽然简单易用但它不能共享所有权的特性却大大限制了其使用范围而boost::shared_ptr可以解决这一局限。顾名思义boost::shared_ptr是可以共享所有权的智能指针首先让我们通过一个例子看看它的基本用法 #include string #include iostream #include boost/shared_ptr.hpp class implementation { public:     ~implementation() { std::cout destroying implementation\n; }     void do_something() { std::cout  did something\n; } }; void test() {     boost::shared_ptrimplementation sp1(new implementation());     std::coutThe Sample now has sp1.use_count() references\n;     boost::shared_ptrimplementation sp2 sp1;     std::coutThe Sample now has sp2.use_count() references\n;          sp1.reset();     std::coutAfter Reset sp1. The Sample now has sp2.use_count() references\n;     sp2.reset();     std::coutAfter Reset sp2.\n; } void main() {     test(); } 该程序的输出结果如下 The Sample now has 1 references The Sample now has 2 references After Reset sp1. The Sample now has 1 references destroying implementation After Reset sp2. 可以看到boost::shared_ptr指针sp1和sp2同时拥有了implementation对象的访问权限且当sp1和sp2都释放对该对象的所有权时其所管理的的对象的内存才被自动释放。在共享对象的访问权限同时也实现了其内存的自动管理。 boost::shared_ptr的内存管理机制 boost::shared_ptr的管理机制其实并不复杂就是对所管理的对象进行了引用计数当新增一个boost::shared_ptr对该对象进行管理时就将该对象的引用计数加一减少一个boost::shared_ptr对该对象进行管理时就将该对象的引用计数减一如果该对象的引用计数为0的时候说明没有任何指针对其管理才调用delete释放其所占的内存。 上面的那个例子可以的图示如下 sp1对implementation对象进行管理其引用计数为1  增加sp2对implementation对象进行管理其引用计数增加为2  sp1释放对implementation对象进行管理其引用计数变为1  sp2释放对implementation对象进行管理其引用计数变为0该对象被自动删除  boost::shared_ptr的特点 和前面介绍的boost::scoped_ptr相比boost::shared_ptr可以共享对象的所有权因此其使用范围基本上没有什么限制还是有一些需要遵循的使用规则下文中介绍自然也可以使用在stl的容器中。另外它还是线程安全的这点在多线程程序中也非常重要。 boost::shared_ptr的使用规则 boost::shared_ptr并不是绝对安全下面几条规则能使我们更加安全的使用boost::shared_ptr 避免对shared_ptr所管理的对象的直接内存管理操作以免造成该对象的重释放 shared_ptr并不能对循环引用的对象内存自动管理这点是其它各种引用计数管理内存方式的通病。 不要构造一个临时的shared_ptr作为函数的参数。 如下列代码则可能导致内存泄漏 void test() {     foo(boost::shared_ptrimplementation(new    implementation()),g()); } 正确的用法为 void test() {     boost::shared_ptrimplementation sp    (new implementation());     foo(sp,g()); } 转载https://blog.csdn.net/maweiqi/article/details/7889397?utm_sourcecopy
http://www.sadfv.cn/news/266634/

相关文章:

  • drupal和wordpress怎么做网站优化排名
  • html模板网站推荐工厂管理培训课程
  • 网站系统怎么做营销网站制作都选ls15227
  • 非官方网站建设给被k的网站做友链
  • 怎么能将网站做的不简单牡丹区住房和城乡建设局网站
  • 如何选择深圳网站建设3d地图网站模板html
  • 国家建设工程造价数据监测平台在哪个网站网络营销论文总结
  • 公司核名在哪个官方网站如何优化网站信息架构
  • 有口碑的盐城网站建设网页设计论文题目大全
  • 网站没被收录做网站运营经理的要求
  • 如何给网站2做推广万维网
  • 优化网站关键词排名软件展示产品的网站
  • 百度怎样收录网站应用商店wordpress
  • 做网站建设深圳中装建设
  • 吉林省城乡建设官方网站WordPress做头部的插件
  • 如何制作企业网站长沙装修公司性价比最高的是哪个
  • 外贸网站赚钱提升网站建设品质
  • 怎么制作网站详细流程wordpress 建表
  • 大兴网站建设新加坡网站后缀
  • 哪些网站可以看一级a做爰片wordpress能做出
  • 做百度网站找谁wordpress的搭建教程
  • 祥云平台网站建设怎么收费网站制作费用需要多少钱
  • 做美容美容院网站的费用忘记wordpress的账号和密码
  • 青龙县建设局网站网络推广服务
  • 网站域名的用处公司企业logo设计免费
  • 怎么弄免费的空间做网站做化妆品网站怎样
  • 邯郸网站设计在哪里深圳创业补贴政策2022
  • 创意个人网站设计网页视觉设计是什么
  • 秦皇岛网站制作专家软件外包公司
  • 深圳网站建设 设计网站文件结构