码迷,mamicode.com
首页 >  
搜索关键字:c++ 智能指针    ( 834个结果
智能指针与句柄类(二)
之前文章提到写时复制(copy-on-write)技术,要实现这种功能,针对上文中Handle代码,需要将size_t * use这个抽象出来,封装成一个引用计数类,提供写时复制功能。CUseCount类实现如下: 1 class CUseCount 2 { 3 public: 4 ...
分类:其他好文   时间:2014-10-22 06:23:50    阅读次数:208
智能指针与句柄类(一)
句柄类/智能指针(smart point)是存储指向动态分配(堆)对象指针的类。除了能够在适当的时间自动删除指向的对象外,他们的工作机制很像C++的内置指针。句柄类实际上是通过复制指向引用计数器类型的指针,来代替复制实际对象;从而使得复制对象变成复制指针,实现虚拟复制(即是用复制对象的地址代替复.....
分类:其他好文   时间:2014-10-21 16:51:15    阅读次数:205
auto_ptr源码剖析
auto_ptr是当前C++标准库(STL)中提供的一种智能指针,包含头文件 #include 便可以使用。auto_ptr 能够方便的管理单个堆内存对象,下面贴出SGI中的auto_ptr源码。 1 /* 2 * Copyright (c) 1997-1999 3 * Silicon...
分类:其他好文   时间:2014-10-20 09:58:34    阅读次数:290
RAII手法封装互斥锁
RAII手法是 Resource Acquisition is Initialization 的缩写,意为“资源获取即初始化”,在使用智能指针时也使用,下面是针对互斥量时的实现, 1 #include 2 #include 3 4 using namespace std; 5 6 class...
分类:其他好文   时间:2014-10-16 16:09:32    阅读次数:141
boost智能指针使用
#include?<iostream> #include?<tr1/memory> #include?<boost/scoped_ptr.hpp>?//scoped_ptr还不属于tr1 #include?<boost/scoped_array.hpp>?//scored_array也不属于tr1 #include?<boost/shared_array.hpp...
分类:其他好文   时间:2014-10-15 01:58:09    阅读次数:469
COCOS2D-X中的智能指针
Cocos2d-x中所有内存管理方式的基础是引用计数,动态分配一个Ref对象后其引用计数为1,并通过retain和release来增持和减少其引用计数。引用计数本身并不能帮助我们进行内存管理。 为了正确地释放对象的内存,Cocos2d-x使用Objective-C里面的自动回收池的机制来管理对象内存的释放。Autorelease有点类似于一个共享的”智能指针”,该”智能指针”的作用域为一...
分类:其他好文   时间:2014-10-13 18:50:09    阅读次数:251
2、COCOS2D-X内存管理机制
在C++中,动态内存分配是一把双刃剑,一方面,直接访问内存地址提高了应用程序的性能,与使用内存的灵活性;另一方面,由于程序没有正确地分配与释放造成的例如野指针,重复释放,内存泄漏等问题又严重影响着应用程序的稳定性。 人们尝试着不同的方案去避免这个问题,比较常用的如智能指针,自动垃圾回收等,这些要么影响了应用程序的性能,要么仍然需要依赖于开发者注意一些规则,要么给开发者带来了另外一些很丑陋...
分类:其他好文   时间:2014-10-13 18:15:19    阅读次数:232
[转]C++智能指针的创建
zero 坐在餐桌前,机械的重复“夹菜 -> 咀嚼 -> 吞咽”的动作序列,脸上用无形的大字写着:我心不在焉。在他的对面坐着 Solmyr ,慢条斯理的吃着他那份午餐,维持着他一贯很有修养的形象 ——— 或者按照 zero 这些熟悉他本质的人的说法:假象。“怎么了 zero ?胃口不好么?”,基本填...
分类:编程语言   时间:2014-10-12 13:33:27    阅读次数:206
boost::shared_ptr
1.boost库的shared_ptr智能指针在使用中遇到了一个需要注意的地方 1 typedef boost::shared_ptr APtr 2 class A 3 { 4 public: 5 void FunA() 6 { 7 m_pB->FunB1(APtr(...
分类:其他好文   时间:2014-10-11 20:26:26    阅读次数:198
C++学习之路: 智能指针入门
引言: 编写智能指针的要点:a) 构造函数接收堆内存b) 析构函数释放内存c) 必要时要禁止值语义。d) 重载*与->两个操作符 1 #ifndef START_PTR_H 2 #define START_PTR_H 3 4 #include 5 using namespace std; 6 ...
分类:编程语言   时间:2014-10-10 03:17:04    阅读次数:211
834条   上一页 1 ... 69 70 71 72 73 ... 84 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!