我们发现设计模式在Java社区很流行,但是在C++社区却没有那么被关注,甚至有点被排斥,究竟是什么原因造成这个差异的呢?
(1)C++内存需要自己管理,所以有些模式在C++里使用不是那么方便,但是Java不用关心内存,所以在Java里的使用设计模式有天生的优势。随着shared_ptr, weak_ptr, unique_ptr等加入C++11,相信这方面会有所改进。
(2)在J...
分类:
编程语言 时间:
2015-07-14 18:06:04
阅读次数:
170
本将主要介绍智能指针shared_ptr和unique_ptr,并简单实现基于引用计数的智能指针。 自C++11起,C++标准提供两大类型的智能指针: 1. Class shared_ptr实现共享式拥有(shared ownership)概念。多个智能指针可以指向相同对象,该对象和其相关资...
分类:
编程语言 时间:
2015-07-14 17:30:18
阅读次数:
254
just read it
smart_ptr: https://mbevin.wordpress.com/2012/11/18/smart-pointers/
move: https://mbevin.wordpress.com/2012/11/20/move-semantics/...
分类:
编程语言 时间:
2015-06-26 13:03:36
阅读次数:
237
Unique pointer:
Manages the storage of a pointer, providing a limited garbage-collection facility, with little to no overhead over built-in pointers (depending on the deleter used).
These obje...
分类:
其他好文 时间:
2015-06-18 22:20:18
阅读次数:
182
在C++11中,引入了智能指针。主要有:unique_ptr, shared_ptr, weak_ptr。 这3种指针组件就是采用了boost里的智能指针方案。很多有用过boost智能指针的朋友,很容易地就能发现它们之间的关间: std boost 功能说明...
分类:
编程语言 时间:
2015-06-12 15:24:56
阅读次数:
501
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
unique_ptr 智能指针(C++11) #include#include //内存using namespace std;void main(){ for ( size_t i = 0; i up(new double ); } cin.get();} 使用智能指针,系统会检测有多少个指针指向...
分类:
编程语言 时间:
2015-05-26 20:50:25
阅读次数:
194
l unique_ptr
:不允许多个指针共享资源,可以用标准库中的move函数转移指针
l shared_ptr
:多个指针共享资源
l weak_ptr
:可复制shared_ptr,但其构造或者释放对资源不产生影响...
分类:
编程语言 时间:
2015-05-18 22:57:19
阅读次数:
160
//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