如果我错了,请纠正我,但我在网上找不到这样的直接内容。 假设您有以下内容:
static Func<int,int> GetInt(int n)
{
return (int y) =>
{
if (y < 2)
return (y);
return
GetInt(n - 1)(y) - GetInt(n - 2)(y);
};
}
尝试通过调用此匿名函数来获取结果将返回类似 System.Func`2[System.Int32,System.Int32] 的内容。 如何使用匿名函数实现递归。我如何转换实际函数的返回值以获得结果?
最佳答案
您似乎按如下方式调用该函数:
var result = GetInt(valueOfN);
请注意,上面的 GetInt
方法返回一个函数本身。因此,要获取内部函数返回的结果,您需要执行以下操作:
var result = GetInt(valueOfN)(valueOfY);
关于C# 匿名函数递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62204926/