c# - 实例化委托(delegate) (Func<T, T>) 的各种方式之间的区别?

标签 c# syntax delegates anonymous-function func

1:

Func<int, int> myFunc = new Func<int,int>(delegate(int x) {
    return x + 1;
});

2:

Func<int, int> myFunc = delegate(int x) {
    return x + 1;
};

3:

Func<int, int> myFunc = x => x + 1;

它们有什么区别?

最佳答案

它们都是一样的 - 只是 syntactic sugar编译成同样的东西。

也就是说 - 使用类型推断和其他编译器优点,3 只是表示 1 的非常非常短的方式。

关于c# - 实例化委托(delegate) (Func<T, T>) 的各种方式之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15041955/

相关文章:

ios - 我的 ViewController subview 委托(delegate)做错了什么?

ios - UITextFieldDelegate textFieldShouldReturn 调用者

swift - 编辑- UITableView 单元格按钮 Action 委托(delegate)- Swift 4

c# - .NET 运行时序列化

c# - 从笔记本电脑摄像头捕获图像

c# - 在DataBound之后对GridView中的特定列进行排序

Javascript Self Executing 应该可以工作吗?

c# - 如何创建一个安装驱动程序的exe

HTML5 - <li> 必须在 <ul> 内吗?

php - 这包括路径语法的含义