许多C / Obj-C API处理指向void的指针。在swift中,这些类型通常表示为UnsafeMutablePointer或UnsafePointer(对于const void *)。 Swift将这些值重新解释为打包数据的典型方法是什么,例如[Float]或[UInt8]?
答案 0 :(得分:0)
最简单的方法是将其强制转换为UInt8
指针:
let buffer = UnsafeMutablePointer<UInt8>(MTLBuffer.contents())
您可以使用下标运算符访问它:
for index in 0 ..< bufferSize {
let foo = buffer[index] // foo is `UInt8` type
...
buffer[index] = bar
}