将条件作为参数传递
问题描述:
是否可以像操作一样将条件作为参数传递?将条件作为参数传递
下面是一个例子。
public void Test(Action action, Condition condition);
...
Test(() => Environment.Exit(0),() => variable == variable2);
答
尝试通过第二个参数为Func<Boolean>
类型。该代码应工作,你必须在你问题的第二部分:
public void Text(Action action, Func<Boolean> condition) {
if (condition()) action();
}
编辑:请注意,你会在你的使用示例做的是创造一个Closure包含捕获变量变量,变量2。在以这种方式使用它们之前,您应该了解闭包的含义。
工作完美,非常感谢!并感谢关于闭路电视的链接:) –