gpt4 book ai didi

c# - 约束与参数 - 强制收集作为参数的方式

转载 作者:太空狗 更新时间:2023-10-29 21:33:31 26 4
gpt4 key购买 nike

我想知道这两种方法之间是否有任何区别。第二个看起来更自然,但这不应该是使用它的唯一原因。也许存在一些性能问题或与它们中的任何一个相关的一些恶魔般的 mambojambo?

void FirstMethod<T>(T a) where T : IEnumerable<Animal>
{
...
}

void SecondMethod<T>(IEnumerable<T> a) where T : Animal
{
...
}

最佳答案

不同的是你可以很容易的通过IEnumerable<Dog>对于第二种方法,但是当你将它传递给第一个方法时,它只会被隐式转换为 IEnumerable<Animal>

看看 fiddle

已编辑感谢@Servy 的评论。

关于c# - 约束与参数 - 强制收集作为参数的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26976626/

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