当前位置: 首页 > news >正文

旅游网站设计说明书百度指数怎么看

旅游网站设计说明书,百度指数怎么看,网站建设 系统维护,网站建设教程书籍1、状态模式的提出 在组件功能开发过程中,某些对象的状态经常面临变化,不同的状态,其对象的操作行为不同。比如根据状态写的if else条件情况,且这种条件变化是经常变化的,这样的代码不易维护。可以使用状态模式解决这…

1、状态模式的提出

在组件功能开发过程中,某些对象的状态经常面临变化,不同的状态,其对象的操作行为不同。比如根据状态写的if else条件情况,且这种条件变化是经常变化的,这样的代码不易维护。可以使用状态模式解决这类问题。状态模式是将状态值抽象成一个基类,将不同状态下的操作,封装成基类中的虚函数,使用者可以依赖抽象的基类来进行功能开发。

2、需求描述

一年有不同节日,不同的节日穿不同的衣服,吃不同的食物。节日可能会随着人们的生活习俗不断地增加。设计一个根据不同地节日,返回对应穿着和食物方面的功能代码。

3、状态模式的代码实现

(1)UML图如下:

(2)代码实现如下:

#include <iostream>
class AbsFestival
{
public:virtual ~AbsFestival(){};virtual void Eat()=0;virtual void Wear()=0;
};class FestivalA:public AbsFestival
{
public:static FestivalA* getInstance(){static FestivalA obj;return &obj;};virtual void Eat()override{std::cout << "FestivalA Eat" << std::endl;}virtual void Wear()override{std::cout << "FestivalA Wear" << std::endl;};
};class FestivalB:public AbsFestival
{
public:static FestivalB* getInstance(){static FestivalB obj;return &obj;};virtual void Eat()override{std::cout << "FestivalB Eat" << std::endl;}virtual void Wear()override{std::cout << "FestivalB Wear" << std::endl;};
};class FestivalC:public AbsFestival
{
public:static FestivalC* getInstance(){static FestivalC obj;return &obj;};virtual void Eat()override{std::cout << "FestivalC Eat" << std::endl;}virtual void Wear()override{std::cout << "FestivalC Wear" << std::endl;};
};class FestivalD:public AbsFestival
{
public:virtual void Eat()override{std::cout << "FestivalD Eat" << std::endl;}virtual void Wear()override{std::cout << "FestivalD Wear" << std::endl;};
};class Client
{
protected:AbsFestival *time;
public:void SetTime(AbsFestival* p){time = p;}void DoWork(){time->Eat();time->Wear();}
};int main()
{Client useObj;FestivalA festivalA;useObj.SetTime(festivalA.getInstance());useObj.DoWork();FestivalB festivalB;useObj.SetTime(festivalB.getInstance());useObj.DoWork();FestivalC festivalC;useObj.SetTime(festivalC.getInstance());useObj.DoWork();FestivalD* festivalD = new FestivalD();useObj.SetTime(festivalD);useObj.DoWork();delete festivalD;festivalD = nullptr;return 0;
}

 程序运行结果如下:

http://www.khdw.cn/news/3918.html

相关文章:

  • 建网站要钱吗 优帮云西地那非片的功效与作用
  • 邵阳隆回今天新闻头条seo课程简介
  • 个人网站炫酷主页html博客营销
  • 青海省网站建设哪家公司比较靠谱重庆seo排名
  • 常用设计资源网站排名推广网站
  • 专做展厅设计网站网店运营公司
  • WordPress插件做成主题代码seo网络营销是什么意思
  • 农村网站做移动互联网外包公司有哪些
  • 个人网站做团购长春seo快速排名
  • 网站开发到上线的流程网络营销的基本特征
  • 如何做网站地图视频seo云优化软件破解版
  • 城乡建设官方网站下载百度2024最新版
  • 如何在网站做引流百度推广账号登陆入口
  • 非自己的网站如何做二次跳转软文写作营销
  • 企业网站的建设流程包含哪些环节?seo关键词排名优化系统源码
  • 京东商城官方网站google官网注册
  • 网站制作在哪能看国内永久免费域名注册
  • 360免费建站app19
  • 网站设计开发是什么搜索关键词排名优化技术
  • dede网站模板下载seo优化软件免费
  • 直播网站如何做能去百度上班意味着什么
  • 网站建设公司一月赚多少搜搜
  • 网站建设实施方案品牌广告图片
  • 做的好的网站营销微信公众号外贸推广优化公司
  • 网站如何做rss订阅培训机构退费法律规定
  • 做日语问卷调查的网站全网搜索引擎
  • 能发锚文本的网站深圳营销型网站建设
  • 网站建设后台管理推广平台有哪些
  • 网站商城建设seo快速排名软件app
  • 做的网站bug多河南制作网站公司