2017-06-13 61 views
-1

我有一个泛型类:通知中心观测与泛型类

open class GenericClass<T:MyClass>: NSObject { 

    public init(_ myParam:Int) {    
     NotificationCenter.default.addObserver(self, selector: #selector(self.someFunc), name: .MyName, object: nil) 
    } 

    func someFunc() { 

    } 
} 

但我不知道,那些代码不起作用。我得到错误:

'self' used before super.init call

回答

0

你只需要调用NSObject初始化剂(你继承的类):

open class GenericClass<T:MyClass>: NSObject { 

    public init(_ myParam:Int) { 
     super.init() 
     NotificationCenter.default.addObserver(self, selector: #selector(self.someFunc), name: .MyName, object: nil) 
    } 

    func someFunc() { 

    } 
}