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
一周排行
  • 2015年1月正式加入51cto视频学院,到现在已经和学院合作半年,也有了自己的学员,在合作和讲课的过程中,对于讲师和学院平台,讲师和学员的关系有了更加深入的体会.我和51cto视频学院之间:学院给我提供一了良好的展 ...
  • 随着以APT为典型代表的新型威胁和攻击的不断增长,企业和组织在防范外部的攻击过程中越发需要依靠充分.有效的安全威胁情报做为支撑,以帮助其更好的应对这些新型威胁.安全威胁情报分析市场应运而生,并蓬勃发展.针对传统的威胁 ...
  • 0.说明        提及的内容为:if.while.for及与他们相搭配的else.elif.break.continue和pass语句.1.if语句语法if expression:         expr_t ...
  • 很多时候,我们需要判断文本框里输入的是否为数字,或者是否为英文,或者是否为英文的大写......!这时我们可以用Js中的charCodeAt()函数,根据不同的字符返回的码不同,从而判断是否是符合要求的!1.//判断 ...
  • 快速构建Windows8风格应用系列文章汇总
     <快速构建Windows 8风格应用>系列的文章基于XAML+C#进行编写, ...
  • OpenVPN实战2:VPN与网关在同一台服器上
    大纲一.前言二.概述三.实战拓扑四.环境准备五.具体配置过程详解六.总结注,实战环境 Ce ...
  • 2009年10月28日,北京,VMware Virtualization Forum 2009.惠普是VMware的合作伙伴,也是本届虚拟化大会的铂金赞助商.惠普推出的HP Insight Dynamics-VSE, ...
  •  除了标准的org.apache.struts.action.Action类外,在Struts中还提供了另外7个Action类来完成特殊的工作.本文及后面的文章中将介绍这些Action类的用法.protectedab ...
  • 在创建SWT中的HelloWorld插件项目中就是用的这种写法,再次复制如下:button.addSelectionListener(new SelectionAdapter(){public void widget ...
  • 扬帆blog原创文章 转载请注明 来自扬帆blog http://www.wesoho.com/article/asp/2845.htm 对DeDecms自带的调查投票模型不大喜欢,自己弄了个新模型,把过程写写,供大 ...