我只想验证我对以下内容的理解
抱歉,我的解释不好
答案 0 :(得分:9)
委托 - 它不是方法签名。 It is a type which encapsulates a method
。因此,委托声明应该具有与其想要封装的方法类似的签名。 When to use Delegate - whenever you want to pass a method to another function.
有关详情,请参阅this和this。
Lambdas - 写一个匿名函数的简短表达方式。但还有更多。 lambda表达式也可以转换为表达式树。有关详情,请参阅this。
匿名函数 - 是..只是那个
操作 - 它是一个委托,可以封装一个不返回任何内容的函数。因此,您应该将其视为a type that can encapsulate an action
并在需要传递操作时使用它。
Func - 可以封装返回内容的函数的委托。但是你应该把它看作a type that can encapsulate a transformation
并在想要传递转换时使用。
答案 1 :(得分:4)
答案 2 :(得分:3)
不要试图看到C#+这些功能。另外,因为你的问题没有严格务实的答案。
从功能编程的角度出发,例如尝试学习F#以了解使用lambda的内容(实际上是函数语言中的所有内容),然后你会更好地理解事物。
它将打开你的思维,让你对命令式编程或C#等混合语言有不同的看法。