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
一周排行
  • 3月26日,上海陌远网络科技有限公司正式开业."陌远e城"电子商务平台也同步正式上线运营. 陌远科技致力于成为中国领先的B2B电子商务平台服务商,为平台上入驻的核心企业.供应商.经销商及终端用户提 ...
  • 一个简易的MysQL性能查询脚本
    如下: #!/bin/sh mysqladmin -P3306 -uroot -p'pas ...
  • CentOS下安装Mysql 5.5全过程一.安装cmake# 安装所需依赖包yum -y install gcc libxml2-dev curl screen \libpng12-dev autoconf lib ...
  • 安装kvm时我们需要设置bridge.当我们安装bridge-util后,会发现/etc/sysctl.conf中添加了与防火墙相关的参数.但是当我们执行sysctl -p时,报错说key未知.这是因为我们没有加载b ...
  •    读喻勇老师it人学习方法颇有感触,因为有些情况给我很相似的感觉.以下我总结一下对我有用,并且应该长期提醒我别走入误区的一些方法.   1.学习的方向   分清心法与招式,心法让你能融汇贯通,招式让你实用.在学习 ...
  •      最近一直在贴吧,问答,论坛里面转悠,想多了解一下关于PDF的资料.现在使用PDF阅读器的人也越来越多了,碰到的问题也都不一样,感觉PDF文件很深奥,接触越多,碰到的问题就越多.     原来刚接触PDF的时 ...
  • 首先安装apache依赖的apr和apr-util1.下载(apr.apache.org/download.cgi)源文件, 如apr-1.5.1.tar.gz2.解压 tar -xzvf apr-1.5.1.tar ...
  • 在线支付接口 php云网接口开发1.云网支付接口的特点和申请订单页面状态页面     云网平台     收款人银行账户返回页面2.云网支付接口PHP开发文档在线支付接口  php支付宝接口开发1.什么是支付接口2.实 ...
  •   今天下午就又白费了很多力气,学习JSP开发,用eclipse开发.于是要搭建jsp环境,我有几个版本额eclipce 3.2 3.3 .3.5 于是百度怎么搭建.下载了无数的lomboz插件.到后来发现我自己绕了 ...
  • Linux+apache+mysql+php+nagios监控服务搭建参考了很多文档总结出来的一个比较完整的nagios服务的搭建:nagios是一款开源监控软件,运行在LINUX/UNIX平台,其配置文件复杂关联性 ...