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)