我有一个初始化方法。 为什么我会在所有成员初始化之前看到'self'被闭包捕获如果我使用&&或||操作数。
var type:Type? = .non
init(dictionary:[String:AnyObject]){
if let type = dictionary["type"] as? Int {
self.type = Type.init(rawValue: type)!
}
//'self' captured by a closure before all members were initialized
if self.type == .picture || self.type == .textWithPicture {
//........
}
}
答案 0 :(得分:3)
你是从NSObject继承你的班级吗?如果是,则需要在使用此类的属性之前调用super的init方法。