我正在尝试在Swift中编写音频应用,但是在mBuffers
中声明指向AudioBufferList
的指针时遇到了问题。
在Swift中,AudioBufferList
声明如下:
struct AudioBufferList {
var mNumberBuffers: UInt32
var mBuffers: (AudioBuffer)
}
其中mBuffers
被声明为单个AudioBuffer,但实际上它应该是AudioBuffer
的可变长度数组(其长度由mNumberBuffers
给出)。
所以我试图声明一个指向mBuffer
的指针:
var buffers:UnsafePointer<AudioBuffer> = &bufferList?.mBuffers
但是,这将导致一个奇怪的编译错误:
错误:无法转换表达式&#39; in $ T4&#39;键入&#39; in $ T4&#39; var buffers:UnsafePointer =&amp; bufferList?.mBuffers ^ ~~~~~~~~~~~~~~~~~~~~
如何声明AudioBuffer指针正确指向mBuffers
?感谢。