如何将扩展方法添加到泛型类型的类中,并访问该类上定义的泛型类型以使方法类型安全?
下面的方法给出了一个编译错误,因为T不是类上定义的相同泛型类型。

extension Array {
   mutating public func addTwo<T>(object: T) {
      append(object)
      append(object)
   }
}

最佳答案

只需删除<T>。您可以在扩展范围内引用T,或者等效地引用Element

关于generics - Swift-泛型类型类/结构的扩展?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25233684/

10-13 06:05