我有2个Commands对象(四个命令设计模式的普通组合)。 命令1在其Execute()函数中,执行Receiver对象函数,该函数返回int值。 该操作的结果需要作为第二个Command对象的参数。
有一个问题:该怎么做? 我当时正在考虑使用一种哪种MacroCommand将这两个命令绑定在一起,但是我不知道如何在它们之间传递这些参数。
我能实现的唯一方法是在第一个Command Execute()函数中创建第二个Command对象,如下所示:
public void Execute()
{
int result = receiver.Function1();
Command2 command2 = new Command2();
command2.setArg(result);
}
但这不是一个选择,因为必须先使用其他参数创建Command2。
我在等待你的答案