我已经将名为portaudio(PortAudio website)的dylib C库编译并导入到Xcode 6.1 Swift项目中,所有功能/类型都可以访问,除了



我很难理解如何在Swift中使用它,在C中我这样声明:

PaStream *audioStream = NULL;

当我收到警告说未声明的类型/未解析的标识符时,有人可以在Swift等效项上提供帮助吗,看来Swift无法桥接typedef void xyz; ?

非常感谢您的帮助。

最佳答案

C typedef

typedef void PaStream;

确实没有导入到Swift中,因为您无法定义void类型的变量。
即使在C语言中,您也只能定义PaStream *类型的指针变量。

因此,您可以添加
typedef PaStream *PaStreamPtr;

到桥接头文件,然后将其用作
var audioStream : PaStreamPtr = nil

关于c++ - 在Swift中从C文件访问 “typedef void PaStream;”的正确语法有任何帮助吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27886861/

10-12 17:29