如何使用Func <>返回方法的引用?

时间:2018-07-04 01:37:28

标签: c#

我有一些简单的代码,但正在努力找出正确的语法以将该方法返回为引用,以便可以使用它。

这就是我想要做的:

    public static Func<float> GetFunction(Functions functions)
    {
        switch (functions)
        {
            case Functions.Linear: return // how do i return the func here?
                break;
            default: return null;
        }
    }

    public static float Linear(float k) // am trying to return this
    {
        return k;
    }

然后的想法是我将能够做类似的事情:

Func<float> func = GetFunction(Functions.Linear);
print func(10);

我不确定我如何创建退货。

1 个答案:

答案 0 :(得分:4)

对于class MyClass: pass key = 'test python' item = MyClass() d = {} item = d.setdefault(key, item) 的委托,该函数接受一个float Linear(float k)参数并具有一个float返回值,则必须使用通用的float委托代替Func<float, float>,它封装了一个不带参数的函数,并返回一个Func<float>。如:

float