【发布时间】:2021-10-07 05:50:32
【问题描述】:
我正在寻求更好地了解如何在 Swift 中实现像这样的导入 C 函数。此错误消息很有帮助,但我尝试了许多变体作为 swift 函数中的参数,但无法完全理解。
无法将类型“() -> ()”的值转换为预期的参数类型“method_handler?” (aka 'Optional>, Optional
, Optional >>, Int32, Optional) -> ()>')
typedef void (*method_handler)(const msg_data_ptr msg, const char *types,
arg_ptr *argv, int argc, void *user_data);
func handler(args)
{
for (i, arg) in args.enumerated() {
print("argument \(i) is: \(arg)")
}
}
在这里传递:
add_handler_new("handler", &handler, nil, 0, 1);
【问题讨论】:
标签: ios c swift function-pointers