使用boost库时,经常会看到如下的类 class A:public enable_share_from_this<A> 在什么情况下要使类A继承enable_share_from_this? 使用场合 :当类A被share_ptr管理,且在类A的成员函数里需要把 当前类对象作为参数传给其他函数时, ...
分类:
其他好文 时间:
2017-05-31 10:12:38
阅读次数:
186
C++Primer 5th 中文版 12.19 智能指针 share_ptr weak_ptr ...
分类:
编程语言 时间:
2016-12-31 21:40:43
阅读次数:
333
目录:1.std::share_ptr智能指针:2.std::tr1::function模板类:3.stringstream:4.set/vector/map:5.static_cast (expression);std::share_ptr智能指针:http://en.cppreference.c...
分类:
编程语言 时间:
2015-12-27 17:41:57
阅读次数:
292
(一)在一项条款说法auto_ptr和tr1::share_ptr适合heap-based资源。然而,并非所有的资源都heap-based的。换句话说不tr1::shared_ptr 和 auto_ptr 总是适合作为资源管理器。管理类型。如果Mutex类型通过lock和unlock两组函数进行相互...
分类:
编程语言 时间:
2015-09-19 19:31:49
阅读次数:
280
智能指针在C++11的标准中已经存在了,分别是unique_ptr,shared_ptr,weak_ptr,其中最常用的应该是share_ptr,它采用引用计数的方式管理内存,当引用计数为0的时候,自动释放内存,但是由于shared_ptr考虑到了线程安全,所以会存在有较大的性能损失。所以在实时游戏...
分类:
Web程序 时间:
2015-09-09 21:21:26
阅读次数:
161
Cocos2d-x 3.2:智能指针本文转载自深入理解Cocos2d-x 3.x:内置数据结构(1)智能指针智能指针在 C++ 11 的标准中已经存在了,分别是unique_ptr,shared_ptr,weak_ptr,其中最常用的应该是share_ptr,它采用引用计数的方 式管理内存,当引用计...
分类:
其他好文 时间:
2015-06-08 07:19:21
阅读次数:
233
条款12: 以对象管理资源 两种只能指针: std:auto_ptr当使用copy操作室,原先的智能指针指向为nullstd:tr1:share_ptr spi();当可以多个指向同样的地址,但是当delete是会进行根据指向改地址的指针数量是否要delete这块内存条款13 在资源管理中小心cop...
分类:
编程语言 时间:
2015-05-09 23:23:57
阅读次数:
227
智能指针的实现思路也体现了C++基于对象的原则,对象应该为自己管理的资源负责,包括资源的分配与释放,而且最好将资源的释放与分配搞的自动化一点,典型的实现方法就是在构造函数里分配资源,在析构函数里释放资源,这样当其他程序员在使用这个对象时,该对象的资源问题几乎不用额外的操心,即优雅又方便
然后如此完美的东西,也有其不容忽视的地方,直接上代码:
// share_ptr.cpp :...
分类:
其他好文 时间:
2015-04-08 13:14:57
阅读次数:
174
智能指针在C++11的标准中已经存在了,分别是unique_ptr,shared_ptr,weak_ptr,其中最常用的应该是share_ptr,它采用引用计数的方式管理内存,当引用计数为0的时候,自动释放内存,但是由于shared_ptr考虑到了线程安全,所以会存在有较大的性能损失。所以在实时游戏开发中,往往不会用到shared_ptr。
在cocos2d-x3.2以及更高的版本中,cocos...
分类:
其他好文 时间:
2015-03-28 13:04:33
阅读次数:
750
对share_ptr,属于强引用型的智能指针。内部通过引用计数实现对对象的管理,在引用计数为0时,自动释放对象。使用share_ptr的缺点是:会造成对象的循环引用,导致对象永远无法释放,比如:Share_ptr可以在多线程中使用,确保指针指向的对象是有效的。Weak_ptr是弱引用性的智能指针。W...
分类:
其他好文 时间:
2014-12-18 22:13:05
阅读次数:
274