无法将 AudioQueueRef inout 参数传递给 Swift 中的 AudioQueueNewOutput
Can't pass AudioQueueRef inout parameter to AudioQueueNewOutput in Swift
这是我的代码:
var queue: AudioQueueRef
error = AudioQueueNewOutput(&dataFormat,
AQOutputCallback,
&player,
nil,
nil,
0,
&queue) // This gives me an error
我收到与 queue
变量相关的错误:"Cannot pass immutable value as inout argument: implicit conversion from 'AudioQueueRef' to 'AudioQueueRef?' requires a temporary"。 AudioQueueNewOutput
要求参数的类型为 UnsafeMutablePointer<AudioQueueRef?>
。我不知道如何实现该转换。
关于如何解决这个问题有什么想法吗?谢谢。
因为它说 AudioQueueRef
必须是 inout
参数意味着相同的变量将随时将其值更改为新的或旧的。因此,您必须将其定义为 Optional
,如下所示:
var queue: AudioQueueRef?
var error = AudioQueueNewOutput(&dataFormat,
AQOutputCallback,
&player,
nil,
nil,
0,
&queue)
如果您仍然遇到任何问题,请告诉我。
这是我的代码:
var queue: AudioQueueRef
error = AudioQueueNewOutput(&dataFormat,
AQOutputCallback,
&player,
nil,
nil,
0,
&queue) // This gives me an error
我收到与 queue
变量相关的错误:"Cannot pass immutable value as inout argument: implicit conversion from 'AudioQueueRef' to 'AudioQueueRef?' requires a temporary"。 AudioQueueNewOutput
要求参数的类型为 UnsafeMutablePointer<AudioQueueRef?>
。我不知道如何实现该转换。
关于如何解决这个问题有什么想法吗?谢谢。
因为它说 AudioQueueRef
必须是 inout
参数意味着相同的变量将随时将其值更改为新的或旧的。因此,您必须将其定义为 Optional
,如下所示:
var queue: AudioQueueRef?
var error = AudioQueueNewOutput(&dataFormat,
AQOutputCallback,
&player,
nil,
nil,
0,
&queue)
如果您仍然遇到任何问题,请告诉我。