2016年8月12日
摘要: 转载:http://www.jellythink.com/archives/101 什么是RAII? RAII是Resource Acquisition Is Initialization的简称,是C++语言的一种管理资源、避免泄漏的惯用法。利用的就是C++构造的对象最终会被销毁的原则。RAII的做 阅读全文
posted @ 2016-08-12 20:53 已停更 阅读(657) 评论(0) 推荐(1) 编辑
摘要: 意图 为其他对象提供一种代理以控制对这个对象的访问 动机 对一个对象进行访问控制的原因是为了只有在我们确实需要这个对象时才对它进行创建和初始化 典型例子:智能指针的实现,通过引用计数来决定“=” 复制构造函数,析构的实现,参见Smart Pointer 智能指针 结构 Proxy 保存一个引用使得代 阅读全文
posted @ 2016-08-12 15:32 已停更 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 什么是对象模型 有两个概念可以解释C++对象模型: 语言中直接支持面向对象程序设计的部分。对于各种支持的底层实现机制。 类中成员分类 数据成员分为静态和非静态,成员函数有静态非静态以及虚函数 class data members:static和nonstatic class data functio 阅读全文
posted @ 2016-08-12 15:09 已停更 阅读(11550) 评论(4) 推荐(9) 编辑
摘要: 意图 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。 结构 Component:定义一个对象接口,可以给这些对象动态地添加职责;(纯虚函数) ConcreteComponent:定义一个具体的Component,继承自Component,重写了Com 阅读全文
posted @ 2016-08-12 10:53 已停更 阅读(183) 评论(0) 推荐(0) 编辑