Swift 3改变了getBytes方法
我试图在swift 3中运行下面的代码
var values = [UInt8](count:data!.length, repeatedValue:0) data!.getBytes(&values, length:data!.length)
其中数据是“数据”数据types(根据swift 3准则,NSData更改为“数据”)
我不能在Swift 3中运行上面的代码。编译器给出错误,“参数重复的值必须在参数之前”。 同样的代码行在Swift 2.2中工作
什么是解决scheme?
对于Swift3,只需使用以下内容:
let array = [UInt8](yourDataObject)
这就是全部,伙计们!)
这意味着在Swift 3中,论证顺序已经被颠倒了。
对于NSData:
var values = [UInt8](repeating:0, count:data!.length) data.getBytes(&values, length: data!.length)
对于数据:
var values = [UInt8](repeating:0, count:data!.count) data.copyBytes(to: &values, count: data!.count)