加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#:Func <>而不是方法?

发布时间:2020-12-15 06:55:20 所属栏目:百科 来源:网络整理
导读:参见英文答案 Func Delegate vs Function6 这是一个好奇的问题,你们都知道: 使用Func而不是方法有什么损害/缺点吗?简单的例子: private static Funcint,int,DBContext,ListT Foo = (i1,i2,dbc) = (i1 != 0) ? dbc.Bar(i2) : new ListT { /*some default v
参见英文答案 > Func Delegate vs Function6
这是一个好奇的问题,你们都知道:

使用Func而不是方法有什么损害/缺点吗?简单的例子:

private static Func<int,int,DBContext,List<T>> Foo =
    (i1,i2,dbc) =>
        (i1 != 0) ? dbc.Bar(i2) : new List<T> { /*some default values ...*/ };

VS

private static List<T> Foo(int i1,int i2,DBContext dbc)
{
    return i1 != 0 ? dbc.Bar(i2) : new List<T> { /*some default values ...*/ };
}

解决方法

我看到严重的缺点:

>性能影响(代表vs方法) – 很小,但它在那里
>没有参数名称(伤害可调性调用)
>定义本身不太可读
>无法重载(谢谢xanatos)

因为你没有获得任何东西,我只会在本地和小的上下文中,并喜欢静态方法

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读