扩展与Generics匹配的超级课程?

时间:2015-11-12 04:14:03

标签: ios swift generics swift2

我想在超类中使用泛型,但是当我创建子类时,我得到了错误

reference to generic type 'A' requires arguments in <...>

如何定义Child Class B?

import UIKit
import Foundation

var str = "Hello, playground"

protocol MyProtocol{
    func protocolfunc()
}

class A <T:MyProtocol> {

}
class B :A{
}

1 个答案:

答案 0 :(得分:2)

如果B本身应该是通用的:

class B<T:MyProtocol> : A<T> { ... }

如果B不应该是通用的那么:

class SomeType : MyProtocol { ... }
class B : A<SomeType> { ... }

例如:

Welcome to Apple Swift version 2.1 (700.1.101.6 700.1.76). Type :help for assistance.
  1> class A<T> {}
  2> class B : A<Int> {}
  3>  
  4> class B<T> : A<T> {}