![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
黑默丁格
成长
展开
-
Bridge
#include<iostream>class DrawAPI{public: virtual void drawCircle(int radiux, int x, int y) = 0;};class RedCircle : public DrawAPI{public: void drawCircle(int radius, int x, int y)override { std::cout << "red circle...原创 2020-12-12 18:25:46 · 105 阅读 · 0 评论 -
Adapter
#include<iostream>#include<string>class MediaPlayer{public: virtual void play(const std::string& type) = 0;};class AdvancedPlayer{public: virtual void playMP4()const = 0; virtual void playVLC()const = 0;};class MP...原创 2020-12-10 23:08:41 · 114 阅读 · 0 评论 -
singleton
#include<iostream>#include<string>#include<thread>#include<chrono>using namespace std;class Singleton{private: string m_str; Singleton(const string& s) : m_str(s) { } static Singleton* p_singleton;public:...原创 2020-12-09 22:38:10 · 128 阅读 · 0 评论 -
Prototype
#include<iostream>#include<string>#include<unordered_map>using namespace std;class Shape{protected: string m_name;public: Shape(const string& s="shape") : m_name(s){ } virtual ~Shape() { } virtual Shape* clon...原创 2020-12-09 00:02:27 · 79 阅读 · 0 评论 -
Builder
#include<iostream>#include<string>#include<vector>using namespace std;class ProductA{public: vector<string> contents; void show()const { for(const auto& each : contents){ cout << each...原创 2020-12-07 21:27:55 · 83 阅读 · 0 评论 -
Abstract Factory Method
#include<iostream>#include<string>using namespace std;class AbstractProductA{public: virtual ~AbstractProductA(){ } virtual string methodA()const = 0;};class ProductA1 : public AbstractProductA{public: string methodA()co...原创 2020-12-06 19:14:17 · 80 阅读 · 0 评论 -
Factory Method
#include<iostream>#include<string>using std::string;using std::endl;using std::cout;class Product{public: virtual string operation()const = 0; virtual ~Product(){ }};class ConcreteProductA : public Product{public: ...原创 2020-12-05 18:24:22 · 79 阅读 · 0 评论 -
Creational patterns
Creational patterns就是多种创建不同对象的方法,大大提高了代码的复用和灵活性。常见的创建类模式有以下几种:Factory Method Abstract Factory Builder Prototype Singleton原创 2020-12-05 17:07:07 · 128 阅读 · 0 评论