当前位置: 首页 > 编程语言 > C#

您可以在C#中将函数分配给变量吗?分享

时间:2023-04-10 23:19:29 C#

C#中可以给变量赋值函数吗?我看到可以在javascript中定义一个函数varsquare=function(number){returnnumber*number};并且可以称为square(2);varfactorial=functionfac(n){返回n<3?n:n*fac(n-1)};打印(阶乘(3));c#代码MyDelegatewriteMessage=delegate(){Console.WriteLine("我被叫到");};所以我需要知道我可以在C#中以相同的方式定义一个函数。如果是,那么只需在c#中给出上述函数定义的一小段。谢谢。您可以创建委托类型声明:delegateintdel(intnumber);然后分配并使用它:delsquare=delegate(intx){returnx*x;};int结果=平方(5);或如上所述,您可以使用代理“快捷方式”(由委托人创建)并使用:Func[methodName]=[inputValue]=>[returnValue]例如:Funcsquare=x=>x*x;int结果=平方(5);您还有其他两个快捷方式:Funcp=()=>8;没有参数:Funcp=()=>8;Funcp=(a,b)=>a+b有两个参数;:函数p=(a,b)=>a+b;函数平方=x=>x*x;Funcfactorial=n=>{returnn这些更详细的形式中的任何一种也是可能的:(我使用square作为示例):PS:int可能不是像factorial这样的方法的合适返回类型。上面的例子只是为了演示语法,所以请根据需要进行修改。以上是C#学习教程:CanyouassignafunctiontoavariableinC#?如果分享的所有内容对您有用,需要了解更多C#学习教程,希望您多多关注---本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: