weak_ptr

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

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

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

前言前几天在很多地方老是碰到RAII(Resouce Acqusition Is Initialition)相关的话题,对于这一块,由于自己以前在代码中很少用到,从来都习惯于使用dumb pointer,所以从没仔细去研究过.当它足够频繁的出现在我的眼前时,我渐渐意识到,是时候该做个了断了(说“了断”貌似有些夸张,其实也只是想把它研究透,以免以后老出现在我的眼前而不知其内部原理..).事实上,我当早该写这篇博文了,只是当我在看标准库的auto_ptr源码时,又发现里面的exception han
一周排行