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

建医疗网站步骤道滘镇做网站

建医疗网站步骤,道滘镇做网站,南昌企业网站建设公司,做网站就找喇叭人在读《大话设计模式》#xff0c;在此记录有关C实现备忘录模式。 场景引入#xff1a;游戏中的存档#xff0c;比如打boss之前记录人物的血量等状态。 下面代码是自己根据理解实现的存档人物血量功能。 #include iostreamusing namespace std;//声明玩家类 class …在读《大话设计模式》在此记录有关C实现备忘录模式。 场景引入游戏中的存档比如打boss之前记录人物的血量等状态。 下面代码是自己根据理解实现的存档人物血量功能。 #include iostreamusing namespace std;//声明玩家类 class GamePlayer { public:GamePlayer(int volume 100) :bloodVolume(volume) {};void setBloodVolume(int volume) {bloodVolume volume;};void decreaseBloodVolume(int volume) {if (bloodVolume volume){bloodVolume 0;}else {bloodVolume bloodVolume - volume;}}int getBloodVolume() {return bloodVolume;};void showBloodVolume() {std::cout 当前角色血量为 bloodVolume std::endl;}private:int bloodVolume; //血量 };//声明备忘录类 class memorandum { public:void setMemor(GamePlayer setPlayer){std::cout 正在存档... std::endl;this-player.setBloodVolume(setPlayer.getBloodVolume());}void getMemor(GamePlayer getPlayer){std::cout 正在读档... std::endl;getPlayer.setBloodVolume(player.getBloodVolume());}private:GamePlayer player; };int main() {GamePlayer player(60); player.showBloodVolume();memorandum playerMemory;//存档playerMemory.setMemor(player);//模拟玩家受到攻击player.decreaseBloodVolume(20);player.showBloodVolume();//回档playerMemory.getMemor(player);player.showBloodVolume();return 0; } 上面这段代码声明了一个备忘录类传入要存档的对象获取其数据临时存储在private的成员变量中。读档的时候引用传入玩家类根据需要拷贝原先存储的数据。但是如果这时候需要添加蓝量相关的数据存储需要修改的代码很多首先是备忘录类中函数获取的数据要修改。然后玩家类中要新添加操作蓝量对应的接口。将备忘录类放在玩家类中可以避免这些接口的声明 代码如下 #include iostream #include memoryusing namespace std;//声明玩家类 class GamePlayer { public:GamePlayer(int volume 100) :bloodVolume(volume) {};//声明备忘录类class memorandum {public:int bloodVolume;memorandum(int bloodNum) :bloodVolume(bloodNum) {};};void setBloodVolume(int volume) {bloodVolume volume;};void decreaseBloodVolume(int volume) {if (bloodVolume volume){bloodVolume 0;}else {bloodVolume bloodVolume - volume;}}int getBloodVolume() {return bloodVolume;};void showPlayerState() {std::cout 当前角色血量为 bloodVolume std::endl;}//存档void savePlayerState() {std::cout 存档中... std::endl;memor std::make_sharedmemorandum(bloodVolume);}void readPlayerState() {std::cout 读档中... std::endl;bloodVolume memor-bloodVolume; //读取人物血量}private:int bloodVolume; //血量std::shared_ptrmemorandum memor; };int main() {GamePlayer player(60); player.showPlayerState();player.savePlayerState();//模拟玩家受到攻击player.decreaseBloodVolume(20);player.showPlayerState();//读档档player.readPlayerState();player.showPlayerState();//再次受到攻击player.decreaseBloodVolume(10);player.savePlayerState();player.readPlayerState(); //读档player.showPlayerState(); //展示当前数据return 0; } 这时如果存档和读档更多的数据比如蓝量怒气值经验等客户端代码不需要修改仅需要修改玩家类中的代码。
http://www.tj-hxxt.cn/news/223815.html

相关文章:

  • 南京江浦做网站设计的公司wordpress产品页面模板
  • 网站开发费用如何账务处理学历提升销售好做吗
  • 网站服务器如何维护微信第三方开发平台
  • 一流高职院校建设工作网站网站建设设计说明
  • 网站建设实训心得及收获湖北联兴建设有限公司网站
  • 段友做的看电影网站网站主页和子页风格如何统一
  • 做服装搭配图的网站有哪些做招聘的网站有哪些内容
  • 义乌网站建设九手机qq邮箱登录网页入口
  • 网站开发都需要什么营销软文300字
  • 苏州制作公司网站的今天的新闻 最新消息
  • 杭州外贸建站公司微信网站在线登录网页版
  • 彩钢做网站能赚钱吗学新媒体运营最好的培训学校
  • 房城乡建设部门户网站google网站建设
  • 嘉兴网站关键词推广无锡商业网站建设
  • 公司网站被百度收录高端网站建设域名注册
  • 怎样做士产品销售网站网站建设丶金手指花总14
  • 杭州网站外包公司seo顾问服务公司
  • 制作网站需要怎么做的wordpress文章列表分页代码
  • 国外网站 网站 推荐河南建设厅二建公示网站首页
  • 个人网站赏析长沙网站整站优化
  • 织梦网站程序下载飞机免费代理ip
  • 做计量检定的网站昆山住房和城乡建设局网站首页
  • 关键词搜索站长工具福州seo代运营
  • 南山网站建设方案书360建筑网骗子
  • 有什么做论文的网站培训做网站
  • 服装网站建设的需求wordpress 插件漏洞扫描
  • html5网站模板源码ftp下的内部网站建设
  • 营销公司网站模板下载网站建设制作公司
  • 网站开发的技术流程有限公司注册流程
  • 网站备案幕布尺寸吸引人的软文标题