我正在尝试编写我称之为“触发器”的代码。它们采用一个对象、一个函数和某种激活标准。一旦激活,它就会在该对象上运行该方法。
这是一个基本的精简示例。它现在按预期工作。一个示例用法是:
SomeObject myObj = new SomeObject();
MyTrigger trigger = new MyTrigger(myObj, "Delete");
trigger.Activate(); // calls myObj.Delete();
现在我调用Invoke
的null
地方是参数通常可以去的地方(我认为)。我遇到的问题是将“零个或多个参数”作为函数声明中的单个参数。创建时我需要一个第三个参数,MyTrigger
这将是在Invoke
.
还是有更好的方法来做到这一点?即我可以以某种方式将对象、函数调用和参数作为单个参数传递吗?也许两个参数?