Meaning of () =gt; Operator in C#, if it exists(() = 的含义C# 中的运算符(如果存在))
问题描述
在 Jon Skeet 的回答中,我在这里读到了这条有趣的线路.
I read this interesting line here, in an answer by Jon Skeet.
有趣的是,他主张使用委托:
The interesting line is this, where he advocated using a delegate:
Log.Info("I did something: {0}", () => action.GenerateDescription());
问题是,我想知道这个 ()=> 运算符是什么?我试过用谷歌搜索它,但因为它是由符号组成的,所以谷歌真的帮不上什么忙.我是不是很尴尬地错过了什么?
Question is, what is this ()=> operator, I wonder? I tried Googling it but since it's made of symbols Google couldn't be of much help, really. Did I embarrassingly miss something here?
推荐答案
这引入了一个不带参数的 lambda 函数(匿名委托),它相当于并且基本上是以下的简写:
This introduces a lambda function (anonymous delegate) with no parameters, it's equivalent to and basically short-hand for:
delegate void () { return action.GenerateDescription(); }
你也可以添加参数,所以:
You can also add parameters, so:
(a, b) => a + b
这大致相当于:
delegate int (int a, int b) { return a + b; }
这篇关于() => 的含义C# 中的运算符(如果存在)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:() => 的含义C# 中的运算符(如果存在)
基础教程推荐
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- WPF 模态进度窗口 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
