我不是Objective-C中new
的忠实粉丝。但this question提出了疑问。为什么这不编译?:
let j = NSNumber.new()
var s = NSString.new()
看起来new()
是常规类方法。虽然在Apple的doc文件中定义了名称后面的嘀嗒声
class func `new`() -> Self!
所以,问题仍然存在。如果NSObject中有new()
,为什么不编译?文件雷达?
答案 0 :(得分:3)
new
是一个保留关键字,您必须使用反引号将其转义。这将有效:
let string = NSString.`new`()
但我建议使用“Swift”方式,因为它更短,更干净,适用于非NSObject
种类:
let string = NSString()