我开始在Swift中尝试CoreAudio
以及“学习CoreAudio”。用Objective-C编写的例子。我注意到使用Swift和CoreAudio
有点尴尬......
例如,我必须使用奇怪的UnsafeMutablePointer struct
来处理指针,CoreAudio
中有很多指针......在设置和获取属性时,您经常使用sizeof()
但是sizeof()
会返回Int
,并且属性获取和设置功能需要UInt32
,所以我必须执行类似UInt32(sizeof(variable.dynamicType))
的操作才能使用此功能并且更加奇怪事情继续......
所以我开始考虑是否可以在Obj-C中编写Core Audio
代码并在Swift中编写所有应用程序UI?使用Obj-C而不是Swift,我会遇到任何性能瓶颈吗?或者为了兼容性和性能,我应该坚持使用Swift吗?
答案 0 :(得分:1)
核心音频是一种基于C的API,所以它可能会觉得与objC混合起来不那么尴尬。
然而,你可以编写一个符合你需求的高级ObjC包装器,意思是完成你期望从CoreAudio获得的所有东西,然后通过添加一个桥来在快速项目中使用它。性能打击将是荒谬的(我知道苹果说快速执行比objC快,但这是低水平所以它将是无害的。