码迷,mamicode.com
首页 >  
搜索关键字:智能指针    ( 834个结果
C++在设计和使用智能指针
为一个C++用户的。使用指针可以算的上是常态,但在使用过程中。多的时间,可能是由于new要么malloc对象,上次忘记的释放结束(我会犯这样一个错误)。内存泄露。而此时智能指针可能能够帮助我去解决问题。智能指针(smart pointer)是利用个引用计数的策略去处理指针的释放,从而保证指针的安全性...
分类:编程语言   时间:2015-08-15 10:19:11    阅读次数:132
C++安全异常std:auto_ptr
auto_ptr它是C++标准库()为了一个智能指针类模板来解决资源泄漏所提供的问题(注意:这只是一个简单的智能指针)auto_ptr在事实原则的实现RAII,对资源的访问,在施工时间。释放资源时,析构函数,而相关的指针操作超载。使用起来就像普通的指针。std::auto_ptr pa(new Cl...
分类:编程语言   时间:2015-08-13 08:49:24    阅读次数:229
C++智能指针使用总结
内存管理是一个比较繁琐的问题,C++中有两个实现方案: 垃圾回收机制和智能指针。垃圾回收机制因为性能等原因不被C++的大佬们推崇, 而智能指针被认为是解决C++内存问题的最优方案。1. 智能指针定义 一个智能指针就是一个C++的对象, 这对象的行为像一个指针,但是它却可以在其不需要的时候自动删除.....
分类:编程语言   时间:2015-08-11 17:56:54    阅读次数:167
智能指针的原理与设计
智能指针:实际指行为类似于指针的类对象 ,它的一种通用实现方法是采用引用计数的方法。下面我们来看看智能指针实现的原理和方法:     1.智能指针将一个计数器与类指向的对象相关联,引用计数跟踪共有多少个类对象共享同一指针;     2.每次创建类的新对象时,初始化指针并将引用计数置为1;     3.当对象作为另一对象的副本而创建时,拷贝构造函数拷贝指针并增加与之相应的引用计...
分类:其他好文   时间:2015-08-10 22:22:02    阅读次数:149
C/C++知识要点5——智能指针原理及自定义实现
智能指针概述: 智能指针用来管理动态对象。其行为类似于常规指针,重要的区别是:它负责自动释放所指向的对象。 C++ 11标准库提供两种智能指针:shared_ptr、unique_ptr 区别是:shared_ptr允许多个指针指向同一个对象;unique_ptr则独占所指向的对象。 另外,还有一种weak_ptr的伴随类,它是一种弱引用,指向shared_ptr所管理的对象。 ...
分类:编程语言   时间:2015-08-10 12:07:49    阅读次数:232
c++ shared_ptr 使用注意事项. 2
1.抛弃临时对象,让所有的智能指针都有名字.2.类向外传递 this 的 shared_ptr 让类继承 enable_shared_from_this. 然后返回 shared_from_this();3. 例子有时间再补上.
分类:编程语言   时间:2015-08-09 22:05:31    阅读次数:158
C++STL位标志、智能指针与异常处理
参考《21天学通C++》第25、第26、第28章节,对STL位标志、智能指针与C++异常处理进行介绍。 一、使用STL位标志 位是存储设置与标志的高效方法。标准模板库提供了可帮助组织与操作位信息的类。 1. bitset类 std::bitset不是STL容器类,因为它不能调整长度,这是一个实用类,针对处理长度在编译阶段已知的位序列进行了优化。需包含#include 。 2. 实例化bi...
分类:编程语言   时间:2015-08-09 18:49:13    阅读次数:149
【C++】智能指针的实现
一点都不智能的智能指针 #include using namespace std; template class Auto { public: // 避免编译器报错,需要显式类型转换 explicit Auto(T* data = NULL) : m_data(data) {} // 转移拷贝 Auto(Auto& that) : m_data(change(that)) {} ...
分类:编程语言   时间:2015-08-08 20:00:08    阅读次数:132
【C++智能指针 auto_ptr】
《More Effective C++》ITEM M9他提到auto_ptr。说是当异常产生的时候。怎么释放为对象分配的堆内存,避免反复编写内存释放语句。PS:这里书里面提到函数退出问题,函数退出会清理栈内存,无论是怎么正常退出还是异常退出(仅有一种例外就是当你调用 longjmp 时。Longjm...
分类:编程语言   时间:2015-08-08 11:41:18    阅读次数:144
OSG智能指针之强指针与弱指针
使用OSG的人都知道OSG的内存管理方式采用了智能指针,通过智能指针的方式让OSG自己处理对象的销毁工作。在OSG中有两个智能指针类型,一个就是我们再熟悉不过的ref_ptr,另外一个可能很多人不一定经常用,但确实非常好的observer_ptr。这两种类型都是作为智能指针而出现的,那他们到底有什么区别?为什么会出现两个类似的东西?下面我们慢慢揭开它们的面纱。     其实它们是两种智能指针类型...
分类:其他好文   时间:2015-08-04 15:40:37    阅读次数:198
834条   上一页 1 ... 51 52 53 54 55 ... 84 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!