无法弄清楚Swift中AudioQueueDispose的用法

时间:2014-09-11 11:16:24

标签: swift audioqueue

我确定这是一个愚蠢的我做错了但是为什么快速解析器告诉我当AudioQueueDispose的定义明确返回OSStatus类型时我无法转换表达式的type()?我已经推迟了一段时间问这个问题因为我知道这会让我感到愚蠢,我只是被忽略了。

为了简单起见,我把它放到了Xcode游乐场......

import UIKit
import AudioToolbox
import AVFoundation

var audioQueue:AudioQueue
var status : OSStatus = OSStatus(noErr)
status = AudioQueueDispose(audioQueue, inImmediate: false)

1 个答案:

答案 0 :(得分:0)

我认为错误消息非常具有误导性,特别是小箭头指向'='符号,暗示它是返回类型的问题。无论如何,实际问题是使用'false',这是一个快速类型'Bool',而函数期望'Boolean'类型,实际上是UInt8。所以上面的内容可以通过写...

来解决
status = AudioQueueDispose(audioQueue, 0)

也许某人可以提供更好的解决方案,而不涉及使用整数?

现在我只是定义了几个常量..

let FALSE:Boolean = 0
let TRUE:Boolean = 1