【发布时间】: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<bool, bool>?即(something) => !something
标签: c# optional-parameters function-parameter