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
一周排行
  • 作者:张宇,北亚硬盘数据恢复中心,转载请联系作者,如果实在不想联系作者,至少请保留版权,谢谢.     不管是哪种文件系统,其根本目的都是相同的:如何把文件存在系统给定的区域里,如何有效地管理文件的读与写.为实现这样 ...
  • 第一时间获得博客更新提醒,以及更多技术信息分享,欢迎关注个人微信公众平台:程序员互动联盟(coder_online),扫一扫下方二维码或搜索微信号coder_online即可关注,我们可以在线交流.
  • 1.修改会话数查询数据库当前进程的连接数:select count(*) from v$process;修改数据库允许的最大连接数:alter system set processes =1500 scope = s ...
  • 12.6备份的可靠性
    12.6 备份的可靠性12.6.1 验证备份选项 尽管验证备份不是必需的,但却很有用.验证 ...
  •   iOS中js与objective-c的交互 因为在iOS中没有WebKit.Framework这个库的,所以也就没有 windowScriptObject对象方法了.要是有这个的方法的话 就方便多了,(ps:Ma ...
  • 批量创建用户和删除用户
    批量创建用户read -p "请输入用户名的前缀:" userread ...
  • #include <iostream> void foo(char *p){   p = "after foo()";}     void main(){   char *p = &q ...
  • 1.问:关于跨长距离的网线施工问题    我在单位遇到这种情况,办公大楼太宽,而internet接入点又在大楼的最左边,要做到每一楼层都有internet接入,又要速度快,应如何解决?    陈宇通答:平衡双绞线对于 ...
  • using System;using System.Windows;using System.Drawing;using System.Drawing.Drawing2D;using System.Windows . ...
  • 关于ppp协议的papchap交叉认证
    实验名称:ppp协议的pap chap交叉认证实验目的:验证两种协议的交叉认证协商实验拓扑 ...