• 课程作业七


    git链接

    简单工厂模式

    • 简单工厂模式的定义: 根据传入的参数即可返回需要的对象,而不需要知道具体的类名;

    • 简要说明:简单工厂把一类需求的不同实现集合起来,这样通过传入不同的需求就可以实现不同的效果。

    • 举个例子:以俄罗斯方块的变形来说,每个不同的俄罗斯方块都有不同的变形效果,将这些不同变形的实现整合在一起,那么只需传入一个变形命令就可以执行相应的变形。

    优缺点

    • 优点 外部只需要知道怎么使用,不需要了解具体的实现过程,简单易用。

    • 缺点:虽然外部调用方便,可正是由于其高度内聚,所以首先不利于拓展,其次一旦发生逻辑错误将很难修改。

       #include<iostream>
       #include<string>
       #include <stdlib.h> 
       #include <ctime>
       using namespace std;
       
       
       class random
       {
       public:
       	virtual char getrandom()=0 ;
       
       };
       
       class rnum :public random//随机数字
       {
       
       public:virtual char getrandom()
       	{
       		int n;
       		n = rand() % 10;
       		return n + '0';
       	}
       };
       
       class rope :public random//随机运算符
       {
       
       public:virtual char getrandom()
       	{
       		int n;
       		n = rand() % 4;
       		switch (n)
       		{
       		case 0:return '+';
       		case 1:return '-';
       		case 2:return '*';
       		case 3:return '/';
       		}
       	}
       };
    
       class randomfactory
       {
       
       	
       public:char randomsign(int n)
       	{
       		char sign;
       		random *r=NULL;
       		if(n%2==0)
       		{
       			r=new rnum;
       			sign=r->getrandom();
       		}
       		else
       		{
       			r=new rope;
       			sign=r->getrandom();
       		}
       		return sign;
       	
       	}
       	
       
       };
    

  • 相关阅读:
    Codeup
    IDEA基于Maven Struts2搭建配置及示例
    深入理解HTTP协议、HTTP协议原理分析
    25条提高iOS App性能的技巧和诀窍
    怎么在苹果Mac虚拟机上安装Win7
    app让个别界面横屏,其他的为竖屏,解决如下
    设置控制器,出现默认知道空隙
    论项目采购管理
    hybrid app
    iOS中使用 Reachability 检测网络
  • 原文地址:https://www.cnblogs.com/daydreams/p/6973805.html
Copyright © 2020-2023  润新知