欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > asp.net >内容正文

asp.net

设计模式复习-命令模式

发布时间:2025/6/17 asp.net 20 豆豆
生活随笔 收集整理的这篇文章主要介绍了 设计模式复习-命令模式 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

#pragma once #include "stdafx.h" #include<set> #include<string> #include<iostream> using namespace std;/*设计模式-命令模式(Command)将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化; 对请求排队或记录请求日志,以及支持可撤销的操作。 */class CReceiver {//知道如何实施于执行一个与请求相关的类的操作。 public:void Action() {cout << "command" << endl;} };class CCommand {//用来声明执行操作的接口。 protected:CReceiver *m_pReceiver; public:CCommand(CReceiver *pCReceiver) {m_pReceiver = pCReceiver;}virtual void Execute() = 0; };class CConcreteCommand :public CCommand {//将一个接受对象绑定于一个接受动作,调用接受者相应的操作,以实现Execute. public:CConcreteCommand(CReceiver *pCReceiver) :CCommand(pCReceiver) {}void Execute() {m_pReceiver->Action();} };class Cinvoker {//要求该命令执行这个请求 private:CCommand *m_pCommand; public:void SetCommand(CCommand *pCommand) {m_pCommand = pCommand;}void ExecuteCommand() {m_pCommand->Execute();} };int main() {CReceiver *pReceiver = new CReceiver();CCommand *pCommand = new CConcreteCommand(pReceiver);Cinvoker *pInvoker = new Cinvoker();pInvoker->SetCommand(pCommand);pInvoker->ExecuteCommand();delete pReceiver;delete pCommand;delete pInvoker;getchar();return 0; }

总结

以上是生活随笔为你收集整理的设计模式复习-命令模式的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。