C# · 12月 27, 2021

c#-3.0 – C#中的()=>是什么意思?

我一直在阅读 Moq的源代码,我遇到了以下单元测试: Assert.Throws<ArgumentOutOfRangeException>(() => Times.AtLeast(0));

而对于我的生活,我不记得什么()=>实际上我认为这与匿名方法或羊羔有关.我确定我知道它是做什么的,我现在不记得了….

更糟糕的是… google isn’t being much help和neither is stackoverflow

有人能给我一个很简单的答案,一个漂亮的noobish问题吗?

解决方法 ()=>是一个无效的lambda表达式.它代表一个匿名函数传递给assert.Throws,并被称为该函数内的某处. void DoThisTwice(Action a) { a(); a();}Action printHello = () => Console.Write(“Hello “);DoThisTwice(printHello);// prints “Hello Hello “