class Person : NSObject {
var name : String?
var age : Int = 0
override init() {
super .init()
}
init(dict : [String : Any]) {
super.init()
setValuesForKeys(dict)
}
}
let p2 = Person(dict: ["name": "jakie", "age" : 61])
print(p2.name ?? "NoOne")
print(p2.age)
在使用kvc给类属性赋值时报了下面的错
error: Execution was interrupted, reason: signal SIGABRT. The process has been left at the point where it was interrupted, use "thread return -x" to return to the state before expression evaluation.
解决这个错需要在属性前面加上@objc,如下
class Person : NSObject {
@objc var name : String?
@objc var age : Int = 0
...
}