Swift 3 change pour la méthode getBytes

J'ai essayé d'exécuter le code ci-dessous dans swift 3

var values = [UInt8](count:data!.length, repeatedValue:0) data!.getBytes(&values, length:data!.length) 

où data est un type de données 'Data' (NSData est remplacé par 'Data' selon les directives de swift 3)

Je ne suis pas capable d'exécuter le code ci-dessus dans Swift 3. Le compilateur donne l'erreur que "Argument La valeur répétée doit précéder l'argument". La même ligne de code fonctionnait dans Swift 2.2

Quelle sera la solution?

Pour Swift3, utilisez simplement:

 let array = [UInt8](yourDataObject) 

C'est tout, les amis!)

Cela signifie que l'ordre des arguments a été inversé dans Swift 3.

Pour NSData:

 var values = [UInt8](repeating:0, count:data!.length) data.getBytes(&values, length: data!.length) 

Pour datatables:

 var values = [UInt8](repeating:0, count:data!.count) data.copyBytes(to: &values, count: data!.count)