Swift 2 中的等效类型 Boolean

Equivalent type Boolean in Swift 2

我正在尝试将下面的行从 Swift 转换为 Swift 2

var cfstatus = CFWriteStreamOpen(stream) as Boolean

// connection fail
if cfstatus == 0 {
    println("Not connected")
    return
}

在Swift2中没有'Boolean'类型。 我曾尝试使用 'Bool' 但出现错误:

Binary operator == cannot be applied to operands of type Bool and Int

Bool 是正确的类型; Boolean默认不存在。

上面与 == 的比较失败,因为操作数具有不同的类型(在本例中为 BoolInt)。试试这个:

var cfstatus = CFWriteStreamOpen(stream)

// connection fail
if !cfstatus {
    println("Not connected")
    return
}

CFWriteStreamOpen的签名是

public func CFWriteStreamOpen(stream: CFWriteStream!) -> Bool

不需要类型转换。

let cfstatus = CFWriteStreamOpen(stream)
// connection fail
if cfstatus == false { // or if !cfstatus {
    println("Not connected")
    return
}

Xcode 通过 -单击符号提供声明的简单查找。

您收到错误消息是因为您试图将 Bool (cfstatus) 与 Swift.[=15= 中禁止的 Int (0) 进行比较]