【问题标题】:C# Passing an Optional Function to another FunctionC# 将可选函数传递给另一个函数
【发布时间】:2018-11-12 17:14:41
【问题描述】:

我知道在 C# 中,您可以将一个函数作为参数传递给另一个函数,如下所示:

public bool DoSomething(int param1, int param2 = 0, Func<bool, bool> f) 
{
//Do Some work
//Run function f
bool i = f(true);
return true;
}

我也知道,如果你初始化其中一个参数,在我的例子中是第二个参数(int param2 = 0),那么这个参数是可选的。

如何将第三个参数(函数 f)设为可选参数? 我应该把它初始化成什么?

我将不胜感激!

【问题讨论】:

  • 您要求的称为“代表”。他们必须发明许多东西来取代裸指针。但是,我不确定 Delegates 是否可以与可选参数结合使用。
  • 初始化为Func&lt;bool, bool&gt;?即(something) =&gt; !something

标签: c# optional-parameters function-parameter


【解决方案1】:
public bool DoSomething(int param1, int param2 = 0, Func<bool, bool> f = null) 
{
 ...
}

【讨论】:

    猜你喜欢
    • 2018-09-10
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    • 2016-07-28
    • 1970-01-01
    相关资源
    最近更新 更多