“变量'xxx'从未发生变异;考虑改为'让'常数”错误

时间:2015-06-19 09:42:28

标签: swift2 xcode7

我有以下问题。我在下面使用此代码,我得到了问题

  

“变量'特征'从未发生变异;请考虑更改为   '让'不变“

for var characteristic:CBCharacteristic in service.characteristics ?? [] {
    print(str)
    _selectedPeripheral!.writeValue(str.dataUsingEncoding(NSUTF8StringEncoding)!, forCharacteristic: characteristic, type: CBCharacteristicWriteType.WithoutResponse)
}

当我改为“let”时,会出现错误:

  

'let'模式不能嵌套在已经不可变的上下文中

为什么建议我进行更改,然后将其标记为错误?

1 个答案:

答案 0 :(得分:64)

您只需删除var,即可创建代码:

for characteristic in service.characteristics ?? [] {
    print(str)
    _selectedPeripheral!.writeValue(str.dataUsingEncoding(NSUTF8StringEncoding)!, forCharacteristic: characteristic, type: CBCharacteristicWriteType.WithoutResponse)
}

因为默认情况下characteristic是不可变的。