Swift:如何从Data复制到OpaquePointer?

时间:2017-06-17 02:07:54

标签: c swift

我有一个从C调用的Swift函数。函数在C中定义如下:

    int (*load_session_func)(
        signal_buffer **record,
        const signal_protocol_address *address,
        void *user_data);

Swift的等价物如下:

    public var load_session_func: (@convention(c)
        record: (UnsafeMutablePointer<OpaquePointer?>?,
        address: UnsafePointer<signal_protocol_address>?,
        userData: UnsafeMutableRawPointer?)
     -> Int32)!

所以我需要在Swift中实现load_session_func(),并将一些Data字节放入 record 参数中。如何将Data中的字节放入OpaquePointer?我不能使用withUnsafeBytes,因为C代码将在我的函数返回后使用字节。

0 个答案:

没有答案
相关问题