gpt4 book ai didi

function - 为什么一个 Func 有效而另一个(几乎相同)无效

转载 作者:行者123 更新时间:2023-12-04 16:30:27 27 4
gpt4 key购买 nike

private static Dictionary<Type, Func<string, object>> _parseActions 
= new Dictionary<Type, Func<string, object>>
{
{ typeof(bool), value => {Convert.ToBoolean(value) ;}}
};

上面给出了一个错误

Error 14 Not all code paths return a value in lambda expression of type 'System.Func<string,object>'



但是,下面这没问题。
private static Dictionary<Type, Func<string, object>> _parseActions 
= new Dictionary<Type, Func<string, object>>
{
{ typeof(bool), value => Convert.ToBoolean(value) }
};

我不明白两者之间的区别。我认为 example1 中的额外大括号是为了让我们在 anon 函数中使用多行,那么为什么它们会影响代码的含义呢?

最佳答案

第一个使用代码块,如果您使用 return,它只会返回一个值关键词:

value => { return Convert.ToBoolean(value); }

第二,作为一个表达式不需要显式的 return .

关于function - 为什么一个 Func 有效而另一个(几乎相同)无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2690300/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com