【发布时间】:2015-07-02 02:22:12
【问题描述】:
CFReadStreamSetClient 的初始化器中有一个 C 函数回调 (CFReadStreamClientCallBack),
CFReadStreamClientCallback 看起来像这样:
typealias CFReadStreamClientCallBack = (CFReadStream!,
CFStreamEventType, UnsafeMutablePointer<Void>) -> Void
我有一个方法尝试处理CFReadStreamClientCallBack C 函数回调:
func callback(stream: CFReadStreamRef,
eventType: CFStreamEventType,
inClientInfo: UnsafeMutablePointer<Void>) {
}
但是当我尝试如下在CFReadStreamCallback 中设置回调时,它不会编译。
CFReadStreamSetClient(stream, registeredEvents, callback, clientContextPtr)
我知道 Swift 2.0 有一种方法可以将 Swift 闭包与 C-Function 回调一起使用,但我似乎无法让它工作。有谁知道在这种情况下怎么做?
【问题讨论】:
标签: ios c swift callback swift2