设计模式
文章平均质量分 83
wpf_ml
c++,linux,database,OLTP,OLAP,socket
展开
-
c++ 设计模式之 抽象工厂模式
概念: 抽象工厂模式提供了一个创建相似或相关相互依赖的对象,而不需要说明其具体的实现. 类结构图: 图来自: wiki 示例代码: #include class Button { public: virtual void paint() = 0; }; class WinButton : public Button { public: void pai原创 2012-07-23 16:52:39 · 719 阅读 · 0 评论 -
c++ 设计模式之 工厂模式
概念 使用工厂的客户根本不知道具体的类.工厂的使用者创建一个基类的对象.但由子类决定实例化哪个.这就允许我们服从子类的实例化,但是调用都不知道哪个对象被创建. 类图 图片来自源: wiki 代码示例 #include class Button { public: virtual void paint() = 0; }; class OSXButton: publi原创 2012-07-23 17:39:48 · 852 阅读 · 0 评论 -
c++ 设计模式之 外观模式
概念 为一系列子系统提供一个统一的接口.外关模式一个高层次的接口使子系统更加容易的使用. 类图 示例代码 #include // Subsystem 1 class SubSystemOne { public: void MethodOne(){ std::cout << "SubSystem 1" << std::endl; }; }; // Subsystem原创 2012-07-23 21:40:02 · 568 阅读 · 0 评论 -
c++ 设计模式之 观察者模式
概念 观察者模式的目的是在对象之间的定义一对多的依赖关系当一个对象改状态时,所有依赖关系的对象全部收到通知并自动更新. 类图 示例代码 #include #include #include #include #include #include using namespace std ; class Subject; class Observer {原创 2012-07-23 20:53:31 · 537 阅读 · 0 评论 -
c++ 设计模式之 单例模式
概念 单例模式是确保一个变量只有一个实例,并提供一个全局的角度进行访问. 类图 示例代码 #include using namespace std; class Singleton { public: static Singleton *getInstance(); private: Singleton(){} static Singleton* instanc原创 2012-07-26 09:47:45 · 508 阅读 · 0 评论