zoukankan      html  css  js  c++  java
  • Head First设计模式C++实现Command模式

    定义:

      命令模式将“请求”封装成对象,以便试用不同的请求,队列或者日志来参数化其他对象。命令模式也可支持可撤销的操作。

    UML图:

    UML-Command

    程序实现:

    程序输出:

    ----------- Remote Control ----------
    [slot 0]LightOnCommand          LightOffCommand
    [slot 1]LightOnCommand          LightOffCommand
    [slot 2]CeillingFanOnCommand          CeillingFanOffCommand
    [slot 3]StereoOnWithCDCommand          StereoOffCommand
    [slot 4]NoCommand          NoCommand
    [slot 5]NoCommand          NoCommand
    [slot 6]NoCommand          NoCommand

    Living Roomlight is on
    Living Roomlight is off
    Kitchenlight is on
    Kitchenlight is off
    Living Room ceiling fan is on high
    Living Room ceiling fan is off
    Living Room Stereo volume set to 11
    Living Room stereo is set for CD input
    Living Room stereo is on
    Living Room stereo is on
    Living Room stereo is set for CD input
    Living Room Stereo volume set to 11
    Living Room stereo is off
    请按任意键继续. . .

  • 相关阅读:
    Application.Exit()结束程序,但线程还在的解决方法
    Myeclipse2014 SVN安装方法以及项目上传到svn服务器
    MyEclipse中把JSP默认编码改为UTF-8
    005_MyEclipse编码设置
    laravel5.2学习资源
    wechat-php-sdk
    微信邀请卡的开发
    微信JS-SDK实际分享功能
    每个Linux新手都应该记住的10个基本Linux命令
    Linux下定时备份数据库
  • 原文地址:https://www.cnblogs.com/zhangyunlin/p/6167955.html
Copyright © 2011-2022 走看看