最佳答案
当我想检查一个可选布尔是否为真时,这样做不起作用:
var boolean : Bool? = false
if boolean{
}
它导致了这个错误:
可选类型“@IvalueBool?”不能用作布尔值; 请测试“ ! = nil” 取而代之
我不想检查是否为 nil; 我想检查返回的值是否为 true。
如果我使用一个可选布尔,我总是必须做 if boolean == true
吗?
既然 Optionals 不再符合 BooleanType
,编译器难道不应该知道我想检查 Bool 的值吗?