4

苹果的文档CustomStringConvertible

不鼓励直接访问类型的description属性 […]。

为什么?


下面是一个示例,其中 usingdescription对我来说似乎很有用。否则我将如何获得相同的结果?

func dontPrintNil(_ s: String?) {
   if s == nil {
        print("placeholder")
    } else {
        print(s!)
    }
}

let s: String? = nil

dontPrintNil(s)                          // → placeholder
dontPrintNil(s?.description)             // → placeholder
dontPrintNil(String(describing: s))      // → nil
dontPrintNil("\(s)")                     // → nil
4

0 回答 0