gpt4 book ai didi

.net - 通用类集合的最佳实践

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

考虑以下代码:

abstract class SomeClassX<T>
{
// blah
}

class SomeClassY: SomeClassX<int>
{
// blah
}

class SomeClassZ: SomeClassX<long>
{
// blah
}

我想要 SomeClassX 的集合,但是,这是不可能的,因为 SomeClassX != SomeClassX 和 List > 是不允许的。

所以我的解决方案是让 SomeClassX 实现一个接口(interface)并将我的集合定义为,其中 ISomeClassX 是接口(interface):

class CollectionOfSomeClassX: List<ISomeClassX>
{
// blah
}

这是最好的方法,还是有更好的方法?

最佳答案

我要么使用您建议的接口(interface),要么让 SomeClassX 继承自另一个类。这实际上取决于您需要对集合中的对象做什么。无论它们有什么共同的功能,都应该放在基类或接口(interface)中,如果这看起来更合适的话。

关于.net - 通用类集合的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/227380/

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