我试图从通用类派生我的类:
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>
这样,其余的代码可以写就像苹果已经解决了这个问题。