将参数与 Func 一起使用<>



我想使用一个小修改的字典>。func&lt;>可以采用1个或更多类型的double参数。

我本来想做这样的事情

Dictionary<string, Func<params double, double>>

基本上我希望能够调用看起来像这样的函数。

double Function1(double value);
double Function2(double value1, double value2);
double Function3(double value1, double value2, double value3);

谢谢

params-keyword仅在调用函数时才是句法糖。基本上参数是值的数组:

public double MyFunc(params double[] values) { // code has to handle a array of double values... }

因此,您只需要将字典定义为

Dictionary<string, Func<double[], double>>

如果您仍然想拥有此句法糖,则应定义一些包装器功能或扩展功能来调用该方法,例如

public double Call(string key, params double[] values)
{
    return dic[key](values);
}

最新更新