今天看到了OC的内存管理这块,觉得很亲切。自己的习惯是尽量自己掌控程序的空间和时间,有点强迫症的感觉。用C和C++做项目的时候,时时刻刻都在操心这new和delete的配对使用和计数,学习stl和boost的时候看到了智能指针等时候,依然不是很爱使用,还是愿意坚持自己控制new和delete;后来用...
分类:
其他好文 时间:
2014-11-08 23:32:22
阅读次数:
308
智能指针是为了便于管理动态内存,能够自动管理释放所指向的对象。智能指针共有三种:1、shared_ptr允许多个指针指向同一个对象;2、unique_ptr独占所指向的对象;3、weak_ptr是一个伴随类,它是一种弱引用,指向shared_ptr所管理的对象。这三种类型都定义在memory头文件中...
分类:
编程语言 时间:
2014-11-08 16:36:26
阅读次数:
169
Effective c++之资源管理介绍,包括智能指针的使用及在拷贝对象和新声明对象时应当注意的事项。...
分类:
编程语言 时间:
2014-11-07 17:09:10
阅读次数:
216
首先我们看看scoped_ptr的基本使用,包括了swap(),get(),reset()的使用,重要的提醒是作用域结束的时候会自己主动析构,无需手动的释放资源:#include#includeusing namespace std;using namespace boost;struct p...
分类:
其他好文 时间:
2014-11-02 12:14:47
阅读次数:
200
//>第一章节整理复习//c++编程技术要点/*//1、虚函数及多态的实现//演示多态技术#include using namespace std;void Demo();int main(){Demo();getchar();return 0;}class Graphic{public:virtual void Draw();}; //END CLASS DEFINITION Graphicvo...
分类:
编程语言 时间:
2014-10-28 12:13:36
阅读次数:
336
由编译器自动分配的内存都有着严格的生存期。全局对象在程序启动时分配,在程序结束时销毁。对于局部自动对象,当我们进入其定义所在的程序块时被创建,在离开块时销毁。局部static对象在第一次使用前分配,在程序结束时销毁。除了自动和static对象外,C++还支持动态分配对象。动态分配的对象的生存期与它们...
分类:
其他好文 时间:
2014-10-27 12:15:15
阅读次数:
204
之前文章中实现的写时复制,句柄类中引用计数和T类型指针是分开的,这里换一种方式来处理,将引用计数和T类型指针视为一个整体,当做句柄类模板参数。先对上节中的引用计数进行改造: 1 class CUseCount 2 { 3 public: 4 CUseCount(); 5 ...
分类:
其他好文 时间:
2014-10-22 19:55:51
阅读次数:
241
引言: 当我们在类的内部需要定义一个指向 this 自身对象的 智能指针时, 会出现 两个同指向智能指针 分属两个系统的问题, 导致析构的时候 出现二次析构, 程序就会挂掉。因为两个指针指向同一个对象,但是却不共享引用计数那么在类内部如何获取 指向自身对象的 智能指针呢, 显式手动的获取很明显是错误...
分类:
编程语言 时间:
2014-10-22 17:55:45
阅读次数:
178