访问泛型 class 的子类型类型?

Access the type a subtype of a generic class ?

在 Swift 中有没有办法访问指定给通用 class 的 class ?

例如:

class MyClass<T> {} 
var myVar:MyClass<SomeOtherClass>

当我有一个 MyClass 对象时,我想访问 SomeOtherClass。

您可以创建一种访问通用参数的方法:

class MyClass<T> {
    static var RelatedType: Any.Type { return T.self }
}

var myVar = MyClass<String>()
print(type(of: myVar).RelatedType) //prints "String"