<分区>
在 Swift 中考虑以下内容:
struct GenericStruct<T> {}
class A {}
class B: A {}
func doSomething() -> GenericStruct<A> {
return GenericStruct<B>()
}
这给出了错误:
Cannot convert return expression of type
GenericStruct<B>
to return typeGenericStruct<A>
但是B
是 A
的子类.
- 为什么 Swift 不能转换
GenericStruct<B>
至GenericStruct<A>
? - 在这种情况下应该做什么?