c# - C#中的匿名方法是什么?

标签 c# .net

谁能解释一下 C# 中的匿名方法(用简单的术语)并提供可能的示例

最佳答案

匿名方法被引入到 C# 2 中,作为一种无需编写单独方法即可创建委托(delegate)实例的方法。它们可以在封闭方法内捕获局部变量,使它们成为一种闭包的形式。

匿名方法类似于:

delegate (int x) { return x * 2; }

并且必须转换为特定的委托(delegate)类型,例如通过分配:

Func<int, int> foo = delegate (int x) { return x * 2; };

...或订阅事件处理程序:

button.Click += delegate (object sender, EventArgs e) {
    // React here
};

有关详细信息,请参阅:

请注意,C# 3 中的 lamdba 表达式几乎完全取代了匿名方法(尽管它们当然仍然完全有效)。匿名方法和 lambda 表达式统称为匿名函数

关于c# - C#中的匿名方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6008097/

相关文章:

c# - RedirectToAction 在页面中显示 404,但仍会重定向

c# - 在 .net 中获取 ssl 证书

.net - 所有测试均通过,但 TFS 将构建标记为部分成功

c# - 从 .net 的角度来看,exe 和 dll 之间有什么特别的区别吗?

C# 线程 : Console application in new thread is invisible

c# - SimpleInjector - 如何使用 LifetimeScopeLifestyle 注册泛型的多个实现?

C# dbml 文件从哪里来?

c# - 调用一个每 5 秒返回一个值的方法

.net - 神秘的WPF异常: 'PresentationFramework.Eren Vista'

c# - 如何使用 C# 解码 JSON 字符串?