_J

please call me j

导航

2012年8月30日 #

【c++手记】句柄类&智能指针

摘要: 很多同学学习c++都会看的一本经典教材《Primer》而在面向对象里面提及到一种概念-智能指针,而往往同学会出现以下的问题【问题】 智能指针是不是一种指针? stl里面的智能指针是什么?【回答】 智能指针是一种类,别名称为句柄类。而这种类型恰恰是《设计模式》中的代理模式、适配器模式(这两种模式以后会在MyBlog的相关文章介绍)。 stl里面的智能指针同样也不是指针!是一种类型! (请往下看!)以下为Baidu解释【定义】句柄类(智能指针smart point)是存储指向动态分配(堆)对象指针的类。除了能够在适当的时间自动删除指向的对象外,他们的工作机制很像C++的内置指针。智能指针... 阅读全文

posted @ 2012-08-30 20:30 _J 阅读(1374) 评论(2) 推荐(0) 编辑

【GC Algorithm】标记-缩并算法

摘要: (文章参考21TO)【概述】标记-缩并算法是为了解决内存碎片问题而产生的一种算法。它的整个过程可以描述为:标记所有的存活对象;通过重新调整存活对象位置来缩并对象图;更新指向被移动了位置的对象的指针。【难点】如何选择所使用的压缩算法,如果压缩算法选择不好,将会导致极大的程序性能问题,如导致Cache命中率低等。一般来说,根据压缩后对象的位置不同,压缩算法可以分为以下三种:1. 任意:移动对象时不考虑它们原来的次序,也不考虑它们之间是否有互相引用的关系。2. 线性:尽可能的将原来的对象和它所指向的对象放在相邻位置上,这样可以达到更好的空间局部性。3. 滑动:将对象“滑动”到堆的一端,把存活对象之间 阅读全文

posted @ 2012-08-30 20:05 _J 阅读(218) 评论(0) 推荐(0) 编辑

【MK Document】CMKObject

只有注册用户登录后才能阅读该文。 阅读全文

posted @ 2012-08-30 14:24 _J 阅读(5) 评论(0) 推荐(0) 编辑