![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
Hysea.
写博客留下自学的痕迹
展开
-
C++ 设计模式之装饰模式
装饰模式代码#include<iostream>using namespace std;class Shape{public: virtual void draw(){};};class Rectangle:public Shape{public: void draw(){ cout<<"画矩形"<<endl; }};class Square:public Shape{public: void draw(){ cout<<原创 2020-08-01 11:25:32 · 189 阅读 · 0 评论 -
C++ 设计模式之适配器模式
适配器模式代码#include<iostream>#include<math.h>using namespace std;class Peg{private: double radius; double width;public: virtual double getRadius(){ return radius; } virtual double getWidth(){ return width; }};class RoundPeg:publi原创 2020-07-31 17:10:55 · 160 阅读 · 0 评论 -
C++ 设计模式之抽象工厂模式
抽象工厂模式代码#include<iostream>using namespace std;class Clothes{public: virtual void weave() = 0;};class JapaneseClothes:public Clothes{public: void weave(){ cout<<"编织一件日系上衣"<<endl; }};class KoreanClothes:public Clothes{public原创 2020-07-30 12:13:49 · 143 阅读 · 0 评论 -
C++ 设计模式之工厂方法模式
工厂方法模式代码#include<iostream>using namespace std;class Transportation{public: virtual void operation() = 0;}; class Truck:public Transportation{public: void operation(){ cout<<"通过公路运输货物"<<endl; }};class Freighter:public Transp原创 2020-07-30 00:05:00 · 151 阅读 · 0 评论 -
C++ 设计模式之生成器模式
生成器模式代码#include<iostream>using namespace std;class Phone{public: int length;//手机长度 int width;//手机宽度 int thickness;//手机厚度 int s_length;//横像素点数 int s_width;//纵像素点数 int cpu;//CPU级别,1:低端,2:中端,3:高端; bool keyboard;//有无键盘 void print(){ cout&l原创 2020-07-28 21:07:23 · 335 阅读 · 0 评论 -
C++ 设计模式之原型模式
原型模式代码#include<iostream>using namespace std;class Shape{public: int x; int y;public: Shape(int x,int y){ this->x=x; this->y=y; } virtual void print(){ } virtual Shape *clone(){ return this; }};class Rectangle: public Shape原创 2020-07-28 00:06:45 · 155 阅读 · 0 评论