错误协议只有一个属性 localizedDescription。
我尝试创建从NSObject和Error继承的自定义对象,但无法覆盖localizedDescription。该怎么做?
这段代码不允许我获取自定义描述:
class MyError: NSObject, Error {
var desc = ""
init(str: String) {
desc = str
}
override var description: String {
get {
return "MyError: \(desc)"
}
}
var localizedDescription: String {
get {
return self.description
}
}
}
func test_my_code() {
let error = MyError(str: "my test string")
let x = error as Error
print(x.localizedDescription)
}
调用函数"test_my_code"时得到了意外结果:"操作无法完成..."。
为了获得"MyError: my test string"结果,我该怎么做?
override
吗? - Sunil Chauhan