1
我試圖讓NSNull
符合NilLiteralConvertible
,但我遇到了挫折的巨大量:製作NSNull符合NilLiteralConvertible
extension NSNull : NilLiteralConvertible{
required convenience init(nilLiteral:()){
self.init()
}
}
首先,我被迫做出init
一個convenience
之一,因爲我不能在擴展中添加指定的初始值。
然後,編譯器變得瘋狂並堅持init必須被製作爲required
,並且在投訴後必須立即將required
初始化器直接添加到類中,而不是擴展名中。 WTF?
任何人都知道這是怎麼回事,以及如何使NSNull
順應這種簡單的協議?
我在Xcode遊樂場測試這個。
什麼是你的使用情況? – Shuo 2014-11-09 01:54:38