码迷,mamicode.com
首页 >  
搜索关键字:5 c++ boost 智能指针    ( 2698个结果
记录以下boost::shared_ptr的一个使用细节
shared_ptr::operator->返回的是T*类型指针,非const T*指针。因此通过const shared_ptr&类型的ptr可以直接调用T各个原始的方法,不用担心const与非const问题。具体shared_ptr::operator->实现如下,摘自boost1.52.0版本...
分类:其他好文   时间:2014-07-09 23:34:42    阅读次数:194
搭建vs2010 boost开发环境
一、编译boost库第一步:下载boost库,下载地址http://sourceforge.net/projects/boost/files/boost/1.55.0/第二部:解压boost库,例如解压到F:\Third-party libs\boost\boost_1_55_0第三部:开始->程序...
分类:其他好文   时间:2014-07-09 23:06:43    阅读次数:332
【足迹C++primer】39、动态内存与智能指针(3)
动态内存与智能指针(3) /** * 功能:动态内存与智能指针 * 时间:2014年7月8日15:33:58 * 作者:cutter_point */ #include #include #include #include using namespace std; /** 智能指针和异常 */ void f() { shared_ptr sp(new int(42)); ...
分类:编程语言   时间:2014-07-09 09:08:04    阅读次数:161
C/C++之智能指针shared_ptr
1、定义shared_ptr的作用有如同指针,但会记录有多少个shared_ptrs共同指向一个对象。这便是所谓的引用计数(reference counting)。一旦最后一个这样的指针被销毁,也就是一旦某个对象的引用计数变为0,这个对象会被自动删除。这在非环形数据结构中防止资源泄露很有帮助。aut...
分类:编程语言   时间:2014-07-09 00:36:15    阅读次数:250
(转)剖析C++标准库智能指针(std::auto_ptr)
不可否认,资源泄露(resource leak)曾经是C++程序的一大噩梦.垃圾回收 机制(Garbage Collection)一时颇受注目.然而垃圾自动回收机制并不能 满足内存管理的即时性和可视性,往往使高傲的程序设计者感到不自在. 况且,C++实现没有引入这种机制...
分类:编程语言   时间:2014-07-08 23:45:57    阅读次数:348
C++智能指针--unique_ptr
unique_ptr是一个独享所有权的智能指针,它提供了一种严格语义上的所有权,包括:     1、拥有它所指向的对象。     2、无法进行复制构造,也无法进行复制赋值操作。也就是说,我们无法得到指向同一个对象的两个unique_ptr。但是可以进行移动构造和移动赋值操作。     3、保存指向某个对象的指针,当它本身被删除释放的时候(比如,离开了某个作用域),会使用给定的删除器释放它指向...
分类:编程语言   时间:2014-07-08 17:23:41    阅读次数:271
C++智能指针--weak_ptr
weak_ptr是对对象的一种弱引用,它不会增加对象的引用计数。weak_ptr和shared_ptr之间可以相互转换,shared_ptr可以直接赋值给week_ptr,week_ptr可通过调用lock函数来获得shared_ptr(如果对象已经被释放,则返回一个空的shared_ptr)。     单纯使用shared_ptr有时会产生问题,考虑下面的代码: 1 class...
分类:编程语言   时间:2014-07-08 17:10:39    阅读次数:289
【足迹C++primer】39、动态内存与智能指针(2)
动态内存与智能指针(2) 直接管理内存 void fun1() { //此new表达式在自由空间构造一个int型对象,并返回指向该对象的指针 int *pi1=new int; //pi指向一个动态分配、未初始化的无名对象 string *ps3=new string; //初始化为空string int *pi2=new int; ...
分类:编程语言   时间:2014-07-08 15:51:21    阅读次数:269
C++智能指针--auto_ptr指针
这里先介绍auto_ptr的缺陷: 因为auto_ptr并不是完美无缺的,它的确很方便,但也有缺陷,在使用时要注意避免。首先,不要将auto_ptr对象作为STL容器的元素。C++标准明确禁止这样做,否则可能会碰到不可预见的结果 auto_ptr的另一个缺陷是将数组作为auto_ptr的参数: auto_ptr  pstr (new char[12] ); //数组;为定义 然后释放资源...
分类:编程语言   时间:2014-07-08 14:38:50    阅读次数:240
C++智能指针--shared_ptr
shared_ptr是一个引用计数智能指针,用于共享对象的所有权。它可以从一个裸指针、另一个shared_ptr、一个auto_ptr、或者一个weak_ptr构造。还可以传递第二个参数给shared_ptr的构造函数,它被称为删除器(deleter)。删除器用于处理共享资源的释放,这对于管理那些不是用new分配也不是用delete释放的资源时非常有用。shared_ptr被创建后,就可以像普通指...
分类:编程语言   时间:2014-07-08 13:26:57    阅读次数:191
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!