gpt4 book ai didi

c# - 你可以在 C# 中将函数分配给变量吗?

转载 作者:行者123 更新时间:2023-12-03 21:08:30 25 4
gpt4 key购买 nike

很难说这里问的是什么。这个问题是模棱两可的、模糊的、不完整的、过于宽泛的或修辞的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center .




10年前关闭。




我看到一个函数可以在javascript中定义,比如

var square = function(number) {return number * number};

并且可以称为
square(2);

var factorial = function fac(n) {return n<3 ? n : n*fac(n-1)};
print(factorial(3));

c# 代码
MyDelegate writeMessage = delegate ()
{
Console.WriteLine("I'm called");
};

所以我需要知道我可以在 c# 中以相同的方式定义一个函数。如果是,那么请在 c# 中给出上面类似函数定义的一小段。谢谢。

最佳答案

您可以创建委托(delegate)类型声明:

delegate int del(int number);

然后分配和使用它:
   del square = delegate(int x)
{
return x * x;
};

int result= square (5);

或者如前所述,您可以使用代表的“快捷方式”(它由代表制作)并使用:
Func<[inputType], [outputType]> [methodName]= [inputValue]=>[returnValue]

例如:
Func<int, int> square = x=>x*x; int result=square(5);
您还有另外两个快捷方式:
无参数函数: Func<int> p=()=>8;具有两个参数的函数: Func<int,int,int> p=(a,b)=>a+b;

关于c# - 你可以在 C# 中将函数分配给变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7056041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com