将条件作为参数传递

问题描述:

是否可以像操作一样将条件作为参数传递?将条件作为参数传递

下面是一个例子。

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。在以这种方式使用它们之前,您应该了解闭包的含义。

+0

工作完美,非常感谢!并感谢关于闭路电视的链接:) –