是否可以将Swift类转换为C void *指针?
// swift class
class MyClass {
}
var myClass = MyClass()
var p: UnsafeMutablePointer<Void> = myClass //<- failed
//c function
void someSwiftClass(void *context);
谢谢
我有类似的问题,您可以按如下所示进行转换。
var myClass = MyClass()
var classPtr = unsafeBitCast(myClass, UnsafePointer<Void>.self)
还有你的职能
func someSwiftClass(voidPointer: UnsafeMutablePointer<Void>) {
}
如果要声明常量指针使用,UnsafePointer<T>
而当指针不是常量时使用UnsafeMutablePointer<T>
在C常量指针中- const int *myCpointer
对应的快速指针- let mySwiftPointer: UnsafePointer<Int32>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句