auto_ptr

RAII和模拟实现智能指针 2016-04-06

什么叫RAII(Resource Acquisition Is Initialization)?RAII指的就是资源分配即初始化,它的作用就是定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释放.它是一种技术.为什么要使用RAII?在堆上分配空间时,我们必须很仔细的申请并给出相应的释放语句,但是随着程序的复杂度增大,判断.循环.递归这样的语句会让程序走向不确定,很有可能出现申请了没释放,申请了多次释放.所以我们定义了一个类来

实现auto_ptr的两种方法 2016-04-05

我们都知道,实现auto_ptr有两种方法:第一种方法:在上一篇博客中我已经实现了,主要思想是管理权转移.第二种方法:它是我们c++标准库中以前的一个版本,主要思想是在auto_ptr类中除了有一个指针的成员变量以外还有一个bool类型的成员变量_owner.构造函数中将_owner设为真,表示对象是指针所指向的内存的拥有者,当要赋值时(ap1=ap2),将ap1的_owner置为true,ap2的_owner置为false.这样我们析构对象时只要检查它的_owner是否为true.为真就释放内

主流RAIIclass的存在价值——不存在能够完全替代DumbPointer的RAIIclass 2012-02-05

前言前几天在很多地方老是碰到RAII(Resouce Acqusition Is Initialition)相关的话题,对于这一块,由于自己以前在代码中很少用到,从来都习惯于使用dumb pointer,所以从没仔细去研究过.当它足够频繁的出现在我的眼前时,我渐渐意识到,是时候该做个了断了(说“了断”貌似有些夸张,其实也只是想把它研究透,以免以后老出现在我的眼前而不知其内部原理..).事实上,我当早该写这篇博文了,只是当我在看标准库的auto_ptr源码时,又发现里面的exception han
一周排行
  • ⑨③-不能浪费拥有的年轻资本老男孩语录⑨③-不能浪费拥有年轻资本万两黄金易得,年轻资本难求!同学们,我们不能浪费比万两黄金还贵重的年轻资本,因为,转眼间你就不再拥有这个资本了,趁着年轻,赶紧去夯实你的资本吧!下面是总 ...
  • 点选菜单栏"工具/重写主引导记录 -------------- 点重启OK!
  • Javah提示未找到..的类文件
    D:\我的文档\workspace\PrepareForExam\src>javah ...
  • 3. 类型限定符类型限定符有const和volatile,const声明的变量不能被修改,volatile大部分用在底层编程中,例如嵌入式程序中.该博客教程视频地址:http://geek99.com/node/10 ...
  •        打包,即将许多个文件和目录合并保存为一个整体的包文件,以方便传递或携带.而压缩操作可以进一步降低打包好的包文件所占用的磁盘空间.Linux中最常用的打包命令为tar.最常用的压缩命令有两个:gzip.b ...
  • 在Java Web开发中,经常需要导出大量的数据到Excel,动辄就上千,上万行的数据让我们的程序感觉压力很大,甚至都出现无法导出的情况,使用POI.JXL直接生成Excel,很容易就造成内存溢出了.即使不溢出,由于 ...
  •  祝我生日快乐 歌手:温岚 专辑:温式效应  我知道伤心不能改变什么 那么让我诚实一点 诚实难免有不能控制的宣泄 只有关上了门不必理谁 一个人坐在空的包厢里面 手机让它休息一夜 难,想切割切掉回忆的画面 眼泪不能流过 ...
  • <html><head><script language="javascript">function clear(){//Source=document.bod ...
  • #useradd -u 0 -o -g 0 username使用 -o参数可以允许建立相同id的用户.passwd username添加密码
  • 1.最通俗的说法告诉你:矩阵是什么(从校内看到,认真读了,感觉很不错) http://dataunion.org/14581.html 解读机器学习基础概念:VC维的来龙去脉 http://dataunion.org ...