
delegate double Doubler(double x);public class Test{ Doubler dbl = (Alpha) => //How does it determine what type is Alpha? { return Alpha * 2 }; Console.Writeline(dbl(10)); //Is it when the method is called? int here; Console.Writeline(dbl(5.5)); //double here???} 我在一个网站上发现了这个声明,我想根据回答,这是不正确的?
“在我们的例子中,我们指定了参数的类型.如果你愿意,你可以让编译器找出参数的类型.在这种情况下,只传递参数的名称而不是它的类型.这是一个例子: “
解决方法 您在委托中声明它.delegate double Doubler(double x);
x是你的Alpha.
您可以使用以下命令轻松替换代码:
Doubler dbl = delegate (double x){ return x*2;}; 您还可以简化lambda表达式:
Doubler dbl = Alpha => Alpha*2;总结
以上是内存溢出为你收集整理的c# – 编译器如何推断委托示例中的类型?全部内容,希望文章能够帮你解决c# – 编译器如何推断委托示例中的类型?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)