C# 将变量传递给构造函数
将变量传递到函数中有什么区别(为什么要使用这种语法)C# 将变量传递给构造函数,c#,syntax,signalr,C#,Syntax,Signalr,将变量传递到函数中有什么区别(为什么要使用这种语法) return _acks.GetOrAdd(id, new AckInfo()).Tcs.Task; return _acks.GetOrAdd(id, _ => new AckInfo()).Tcs.Task; return _acks.GetOrAdd(id, (_) => new AckInfo()).Tcs.Task; 这方面的最佳实践/用例是什么 第41行最后两行相同。它们是空的操作,没有参数。下划线表示虚无的占
return _acks.GetOrAdd(id, new AckInfo()).Tcs.Task;
return _acks.GetOrAdd(id, _ => new AckInfo()).Tcs.Task;
return _acks.GetOrAdd(id, (_) => new AckInfo()).Tcs.Task;
这方面的最佳实践/用例是什么
第41行最后两行相同。它们是空的
操作
,没有参数。下划线表示虚无的占位符
第一个无法编译。。假设该方法需要一个操作
。否则,如果有过载,它会
因此,答案是没有最佳实践。他们是一样的。。或者它们用于特定目的(操作
与否操作
)
我建议你。具体来说,.后两个是相同的。它们是空的
操作
,没有参数。下划线表示虚无的占位符
第一个无法编译。。假设该方法需要一个操作
。否则,如果有过载,它会
因此,答案是没有最佳实践。他们是一样的。。或者它们用于特定目的(操作
与否操作
)
我建议你。具体来说,.我写了这段代码,以便回答:)。第二个和第三个是相同的,但第一个和第三个的区别在于,您每次都在分配一个新的AckInfo,而不是创建一个在需要时运行的委托。它将AckInfo的分配延迟到最后一分钟。我编写了这段代码,以便回答:)。第二个和第三个是相同的,但第一个和第三个的区别在于,您每次都在分配一个新的AckInfo,而不是创建一个在需要时运行的委托。它将AckInfo的分配延迟到最后一分钟。如果可以通过隐式转换将对象转换为动作,则前两个也可能相同。前两个也可能相同,如果可以使用隐式转换将对象转换为动作。