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

自己做一个网站一年的费用建设银行网站查询密码怎么开通

自己做一个网站一年的费用,建设银行网站查询密码怎么开通,17网站一起做网店广州新塘,第一ppt模板官网很多人听说过标准auto_ptr智能指针机制#xff0c;但并不是每个人都天天使用它。这真是个遗憾#xff0c;因为auto_ptr优雅地解决了C设计和编码中常见的问题#xff0c;正确地使用它可以生成健壮的代码。本文阐述了如何正确运用auto_ptr来让你的代码更加安全——以及如何避免… 很多人听说过标准auto_ptr智能指针机制但并不是每个人都天天使用它。这真是个遗憾因为auto_ptr优雅地解决了C设计和编码中常见的问题正确地使用它可以生成健壮的代码。本文阐述了如何正确运用auto_ptr来让你的代码更加安全——以及如何避免对auto_ptr危险但常见的误用这些误用会引发间断性发作、难以诊断的bug。 1.为什么称它为“自动”指针 auto_ptr只是众多可能的智能指针之一。许多商业库提供了更复杂的智能指针用途广泛而令人惊异从管理引用的数量到提供先进的代理服务。可以把标准C auto_ptr看作智能指针的Ford Escort(elmar注可能指福特的一种适合家居的车型)一个简易、通用的智能指针它不包含所有的小技巧不像专用的或高性能的智能指针那么奢华但是它可以很好的完成许多普遍的工作它很适合日常性的使用。 auto_ptr所做的事情就是动态分配对象以及当对象不再需要时自动执行清理。这里是一个简单的代码示例没有使用auto_ptr所以不安全     // 示例 1(a): 原始代码     //     void f()     {       T* pt( new T );       /*...更多的代码...*/       delete pt;     } 我们大多数人每天写类似的代码。如果f()函数只有三行并且不会有任何意外这么做可能挺好的。但是如果f()从不执行delete语句或者是由于过早的返回或者是由于执行函数体时抛出了异常那么这个被分配的对象就没有被删除从而我们产生了一个经典的内存泄漏。 能让示例1(a)安全的简单办法是把指针封装在一个“智能的”类似于指针的对象里这个对象拥有这个指针并且能在析构时自动删除这个指针所指的对象。因为这个智能指针可以简单的当成一个自动的对象这就是说它出了作用域时会自动毁灭所以很自然的把它称之为“智能”指针     // 示例 1(b): 安全代码, 使用了auto_ptr     //     void f()     {       auto_ptrT pt( new T );       /*...更多的代码...*/     } // 酷: 当pt出了作用域时析构函数被调用       // 从而对象被自动删除 现在代码不会泄漏T类型的对象不管这个函数是正常退出还是抛出了异常因为pt的析构函数总是会在出栈时被调用。清理会自动进行。 最后使用一个auto_ptr就像使用一个内建的指针一样容易而且如果想要“撤销”资源重新采用手动的所有权我们只要调用release():     // 示例 2: 使用一个 auto_ptr     //     void g()     {       T* pt1 new T;       // 现在我们有了一个分配好的对象       // 将所有权传给了一个auto_ptr对象       auto_ptrT pt2( pt1 );       // 使用auto_ptr就像我们以前使用简单指针一样       *pt2 12;       // 就像 *pt1 12;       pt2-SomeFunc(); // 就像 pt1-SomeFunc();       // 用get()来获得指针的值       assert( pt1 pt2.get() );       // 用release()来撤销所有权       T* pt3 pt2.release();       // 自己删除这个对象因为现在       // 没有任何auto_ptr拥有这个对象       delete pt3;     } // pt2不再拥有任何指针所以不要       // 试图删除它...ok不要重复删除 最后我们可以使用auto_ptr的reset()函数来重置auto_ptr使之拥有另一个对象。如果这个auto_ptr已经拥有了一个对象那么它会先删除已经拥有的对象因此调用reset()就如同销毁这个auto_ptr然后新建一个并拥有一个新对象     // 示例 3: 使用reset()     //     void h()     {       auto_ptrT pt( new T(1) );       pt.reset( new T(2) );         // 删除由new T(1)分配出来的第一个T     } // 最后pt出了作用域       // 第二个T也被删除了
http://www.sadfv.cn/news/75718/

相关文章:

  • 一般做网站的软件wordpress去掉index
  • 哪个网站可以做中文云文字网站建设报价单-中英文版
  • 什么网站可以做软件有哪些内容吗济宁住房和城乡建设厅网站
  • 海沧网站建设淘宝天猫优惠券网站建设费用
  • 门户网站定制开发wordpress代码生成器
  • 杂志社网站建设意义建设银行网站打不开怎么办
  • 网站备案需要哪些东西wordpress图片粘贴插件
  • 自己做的旅游网站 介绍钢结构平台
  • 自助建站软件自动建站系统苏州网站开发公司兴田德润优惠吗
  • 学做宝宝衣服网站好电子商务网站建设与管理期末考试题
  • 网站建设流程周期公司入口网站app
  • 代理上海建站公司注册出口网站制作
  • 永川网站建设熊掌号做网站开专票税钱是多少个点
  • 邯郸网站设计制作wordpress伪静态规则
  • 中国开发网站的公司北京网站建设 公司
  • 用excel做网站展厅设计搭建
  • 餐饮公司网站模板开发公司运营部职责
  • 泰州网站建设专业团队目前最好的引流方法
  • 逻辑图在线制作网站深圳对留学生创业政策
  • 建网站和开发网站网站建设方案书模板 备案
  • wap网站微信分享代码多店铺开源商城系统
  • zhi做网站做前端常用的网站及软件下载
  • 青岛开发区网站建设公司crm客户管理系统免费软件
  • 内设网站个人网站备注
  • 如何使用网站模板建设网站珠海企业网站建设
  • 建立个人视频播放网站微信h5制作平台
  • 网站会员权限佛山做优化的公司
  • 负责网站的建设规划微信公众平台网页开发
  • 免费发布推广信息的网站网站建设方案和报价表
  • 做国外网站推广17一起做网站广州