我在我的Swift项目中使用了一份C库,其中一个函数需要一个
我的问题是- 如何以最高效和最简便的方式将
如果有任何帮助将不胜感激。谢谢
UnsafePointer<UnsafePointer<UInt8>?>!
类型的传入输出参数来传递数据。但问题是我手头的数据是用UnsafeMutablePointer<UnsafeMutablePointer<UInt8>?>!
类型表示的。我的问题是- 如何以最高效和最简便的方式将
UnsafeMutablePointer
转换为UnsafePointer
在Swift 3中?这些指针在“文件上”并没有太大的区别,在技术上也不应该有太大的区别,但我在这个主题上找不到有价值的信息。如果有任何帮助将不胜感激。谢谢
unsafeBitCast
? - Cristikint av_image_alloc(uint8_t *pointers[4], int linesizes[4], int w, int h, enum AVPixelFormat pix_fmt, int align);
- Eugene AlexeevO(1)
中运行,但不确定编译器或运行时是否允许您正确地进行转换。并且正如其名称所示,它是不安全的,如果使用不当可能会导致意外结果。 - Cristikpublic func av_image_alloc(_ pointers: UnsafeMutablePointer<UnsafeMutablePointer<UInt8>?>!, ...)
,使用可变指针,所以我想知道为什么你要将你的参数转换为UnsafePointer
。 - Martin R