C++ 11提出了弱引用的概念,与strong reference(shared_ptr)相对的一个概念。使用的类型为:boost::weak_ptr. weak_ptr首先是一个模板,其次是无法直接访问对象,使用时必须将其转换成shared_ptr,最后这种指针...
分类:
编程语言 时间:
2015-05-19 13:18:13
阅读次数:
188
l unique_ptr
:不允许多个指针共享资源,可以用标准库中的move函数转移指针
l shared_ptr
:多个指针共享资源
l weak_ptr
:可复制shared_ptr,但其构造或者释放对资源不产生影响...
分类:
编程语言 时间:
2015-05-18 22:57:19
阅读次数:
160
??
shared_ptr是一个引用计数智能指针,用于共享对象的所有权。它可以从一个裸指针、另一个shared_ptr、一个auto_ptr、或者一个weak_ptr构造。还可以传递第二个参数给shared_ptr的构造函数,它被称为删除器(deleter)。删除器用于处理共享资源的释放,这对于管理那些不是用new分配也不是用delete释放的资源时非常有用。shared_ptr被创建后,就可以...
分类:
编程语言 时间:
2015-05-05 12:35:00
阅读次数:
179
//C++智能指针模板类复习
#include
#include
using namespace std;
//智能指针用于确保程序不存在内存和资源泄漏且是异常安全的。
//C++98中提供了auto_ptr,C++11摒弃了auto_ptr,并提出了unique_ptr 、shared_ptr、weak_ptr
void show1()
{
int* p = ne...
分类:
编程语言 时间:
2015-04-27 21:57:40
阅读次数:
247
C++智能指针主要是在普通指针的基础上封装了一层,使得使用者对指针的使用更加方便和放心,在使用的过程中不用担心指针因为释放问题而导致的异常。在C++11中,智能指针主要有三种:shared_ptr ptr, unique_ptr ptr, weak_ptr ptr;
shared_ptr ptr的初始化可以通过以下几种方式:
1)shared_ptr ptr = m...
分类:
编程语言 时间:
2015-03-29 01:54:51
阅读次数:
215
智能指针在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
C++ 智能指针
flyfish 2015-3-1
使用原始指针进行显示内存管理在性能上有优势,但容易出错。诸如 野指针,重复释放,内容泄露等。
C++为了在编程语言上支持更好的内存管理机制,C++98提供了auto_ptr,因为auto_ptr的缺点在C++11中被废弃,C++11提供了
unique_ptr,shared_ptr,weak_ptr等智能指针在自动回收堆分配的内存,智能指...
分类:
编程语言 时间:
2015-03-01 17:09:47
阅读次数:
253
C++拾遗--智能指针
前言
内存泄露是常见的问题,新标准中的智能指针从根本上解决了这个问题。所谓的智能指针,其智能性体现在:当没有对象使用某块动态分配的内存时,那就自动释放这片内存。
智能指针
下面这段程序可耗尽内存,导致程序崩溃。...
分类:
编程语言 时间:
2015-02-19 20:47:03
阅读次数:
240
由于非常习惯用const来加强代码的封装性,结果最近遇到了一些问题,顺带研究了一下以前基本没用过boost的智能指针,后来进了新项目组,引擎里遇到了大量boost的shared_ptr,intrusive_ptr指针,还有weak_ptr。因为遇到过更好用的weak_ptr,所以boost::wea...
分类:
其他好文 时间:
2015-02-15 11:54:40
阅读次数:
314
1. shared_ptr是要程序管理的对象,这个对象管理了它引用的另一个对象2. shared_ptr销毁的时候,把它引用的对象的引用数减一,这个是强引用3. weak_ptr可以认为是普通指针,它不管理它引用的对象的内存左边的小方块是智能指针对象,右边P对象拥有一个引用C的智能指针,C要能P销毁...
分类:
其他好文 时间:
2015-02-10 15:13:42
阅读次数:
138