'init()'已经被弃用:在Swift 3中将会被移除。使用`nil`。

10
我正在使用这段代码。
var audioUnit:AudioUnit = AudioUnit()

但是在Xcode 7.3(Swift 2.2)中,我收到了这个警告。有任何想法原因是什么?如何去掉它?

N.B. 如果我使用nil,那么我的程序会崩溃。

screenshot

1个回答

12

AudioUnitAudioComponentInstance 的别名,而AudioComponentInstance 本身是 COpaquePointer 的别名。随着 Swift 3.0 的到来,初始化指针将被移除,所以现在只需要把变量设置为 nil

nilAudioUnit() 实际上是等价的。如果你的程序由于使用了 nil 而崩溃,那么可能是其他地方的代码存在问题。

Xcode Playground


@JarrodSmith,请确保在编辑他人的答案时使用有效的链接。我已经进行了编辑,纠正了您的无效超链接。 - JAL

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接