摘要: C++ 沉思录也算是C++中的经典书籍,其中介绍OO思想的我觉得很好,但是全书中贯穿了handle,使用引用计数等,也有点不适合现代C++的设计思想。这里使用shared_ptr 智能指针改写了“句柄”这一章的程序,明显使代码量下降,而且管理方便。下面来看代码:#include <iostream>#include <memory>using namespace std;class Point{public: Point() : xval(0),yval(0){}; Point(int x, int y): xval(x), yval(y){}; Point(const 阅读全文
posted @ 2012-08-10 21:11 KingsLanding 阅读(1647) 评论(0) 推荐(0) 编辑
摘要: shared_ptr的作用有如同指针,但会记录有多少个shared_ptrs共同指向一个对象。这便是所谓的引用计数(reference counting)。一旦最后一个这样的指针被销毁,也就是一旦某个对象的引用计数变为0,这个对象会被自动删除。shared_ptr 在 Technique report I 中已经出现,在effective C++ 中提到过shared_ptr 的使用,现在已经成为C++11 的正式成员。shared_ptr 的自动删除功能是一个很好的防止内存泄露的方法,在C++中也称为RAII(Resource Acquisition Is Initialization).. 阅读全文
posted @ 2012-08-10 21:02 KingsLanding 阅读(2358) 评论(0) 推荐(0) 编辑