
顶层建筑---设计模式
FRMMAR
这个作者很懒,什么都没留下…
展开
-
工厂模式-设计模式coding
简单工厂模式最简单,高内聚性不好不属于23种设计模式中的设计模式#include <iostream>using namespace std;class Fruit{public: virtual void getFruit() = 0;};class Banana: public Fruit{public: virtual void getFruit() { cout << "banana" << en原创 2020-09-13 22:20:34 · 67 阅读 · 0 评论 -
单例模式-设计模式coding
敲一敲单例模式代码单例模式分位懒汉式和饿汉式。懒汉式:使用get实例方法时,创建对象,遇上多线程问题,线程同步,加锁解锁饿汉式:在全局空间创建对象懒汉式单例模式全局空间创建的类型为nullptr,调用getInstancan方法时先判断对象是否存在,若不存在,实例化class Singleton{public: static Singleton* getInstance() { if (m_psl == nullptr) { m_psl = new Singleton;原创 2020-09-13 21:32:04 · 90 阅读 · 0 评论 -
观察者模式-设计模式coding
观察者模式理解-设计模式coding练习OO设计主要是类的设计,所谓设计模式就是不同类成员间的关联形式该示例观察者模式实现两个类Overlooker 观察者类,拥有需要接收消息的对象指针列表(或其他容器);player 玩家类,拥有观察者指针。C++代码如下:#include <iostream>#include <string>#include <list>using namespace std;/*定义对象间一对多的依赖关系,使得每原创 2020-09-12 21:53:03 · 161 阅读 · 1 评论 -
组合模式-设计模式coding
组合模式Composite适用于:单个对象和组合对象的使用具有一致性,将对象组合成树形结构以表示部分–整体。通过递归手段来构造树形的对象结构,并可通过一个对象来访问整个对象树用树形结构模拟文件夹与文件的逻辑关系#include <iostream>#include "string"#include "list"using namespace std;class AbFile{public: virtual void display() = 0; virtua原创 2021-04-05 21:03:21 · 114 阅读 · 0 评论 -
建造者模式-设计模式coding
适用于:复杂对象的构造,将对象的构建和对象的表示进行分离,解耦合对象的表示:产品类Product对象的构建:建造者Builder客户端:设计师Director核心思路:House、Builder、Director对象的类的抽象#include <iostream>#include "string"using namespace std;class House{public: void setDoor(string door) { ..原创 2021-04-05 21:02:21 · 96 阅读 · 0 评论