我正试图将一个UnsafePointer<UInt16>
转换成一个UnsafePointer<Float>
,目前为止我得到了以下解决方案:
let bufferSize = 1024
let buffer: UnsafePointer<UInt16> = ....
let tmp = UnsafeBufferPointer(start: buffer, count: bufferSize).map(Float.init)
let converted: UnsafePointer<Float> = UnsafePointer(tmp)
它可以工作,但我感觉这不是一种高效的方法,因为我正在创建一个中间的Array
... 有没有更好的方法来处理这个问题?