0
我有一个关于Swift函数参数语法的问题。如何将函数参数从Obejctive-C转换为Swift?
我想通过从库C
基于回调函数来获得信息,所以我就与Objective-C的功能如下:
void foo(char *arg) {
NSLog(@"%s", log);
}
然后,我注册foo
到MainController
接口的Objective-C这样的。
typedef void (*CB)(char *);
void addFoo(CB func);
...
addFoo(&foo);
上面的代码是一个简化的表示,但它很好地打印了图书馆的日志。现在,我不得不将语言从Objective-C改为Swift。大部分源代码已经改变,但对于上述功能,日志不能正常输出。
我该如何更改?
请帮忙。
我想维护使用'char *',因为库只允许使用该类型。如果我更改为'String',它会自动投射吗? – Kae10
我不认为你需要'(pa:)'在倒数第二行? – Sweeper
@ Kae10不,你只能在Swift中使用'CChar'。 – Lumialxk