扩展程序中的初始化程序
扩展可以包含便利初始化程序。例如,Int
的可用初始化程序接受 NSString
:
extension Int {
init?(_ string: NSString) {
self.init(string as String) // delegate to the existing Int.init(String) initializer
}
}
let str1: NSString = "42"
Int(str1) // 42
let str2: NSString = "abc"
Int(str2) // nil