命令模式是一种行为型设计模式,它将请求封装成一个对象,从而使你可以用不同的请求对客户端进行参数化。这种方式能够将方法调用、请求或操作封装到单独的对象中,使调用者和接收者解耦。在本篇文章中,我们将通过使用C++和C#来说明命令模式。
命令模式的组成部分包括:命令接口(Command Interface)、具体命令(Concrete Command)、命令调用者(Command Invoker)和命令接收者(Command Receiver)。让我们逐个来看每个组成部分。
首先,我们定义一个命令接口,它声明了执行命令的方法。在C++中,我们可以这样写:
class Command {
public:
virtual void execute() = 0