切换到Swift 3,在XCode 8.0中,强制解包已更改,如下面的游乐场代码中所述:
var i: Int!
i = 0
print("\(i)") // -1 outputs "Optional(0)\n"
var j = i
j = 0
print("\(j)") // -2 still "Optional(0)\n"
var k: Int = i
print(k) // -3 outputs "0\n"
var l: Int = j // -4 error: Value of optional type 'Int?' not unwrapped; did you mean to use '!' or '?'?
print(l)
在swift 2中,这只用于输出“0 \ n”(没有Optional(),没有编译错误。)
对我来说似乎是一个错误。或者我在Swift 3中遗漏了什么?