在swift中从泛型类派生的类的限制

前端之家收集整理的这篇文章主要介绍了在swift中从泛型类派生的类的限制前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图从通用类派生我的类:
class foo<T> {}
class bar : foo<Int> {}

但这个代码无法编译en错误

Classes derived from generic classes must also be generic

如何避免这个限制?可能吗?

Ssreg,

不幸的是这是official

You can subclass a generic class,but the subclass must also be a
generic class.

让我们希望苹果在未来的版本中解决这个问题。

同时,让我们看到这是利用aggregation而不是子类化的机会。

注意:

作为一个穷人的版本的解决方案,可以使用typealias:

class foo<T> {}
class bar<Int> : foo<Int> {}
typealias Bar = bar<Int>

这样,其余的代码可以写就像苹果已经解决了这个问题。

原文链接:https://www.f2er.com/swift/320963.html

猜你在找的Swift相关文章