【发布时间】:2018-07-02 14:25:00
【问题描述】:
我需要在 Swift (4) 中进行以下 C 转换:
struct A ** castme = input
struct B * tothis = (struct B *)castme
在 Swift 中,castme 类型是 UnsafeMutablePointer<UnsafeMutablePointer<A>?>!
我假设我正在尝试转换为 UnsafeMutablePointer<B>! ?
另外,说我也可以将*(castme) 直接转换为(struct B) 是否正确?如果是,通过从 UnsafeMutablePointer<A>? 转换为 B 是否会使转换更容易?
我看到了这个帖子,但无法从中得到我需要的东西: Cast to different C struct unsafe pointer in Swift
【问题讨论】:
-
嗯,将 指向指针的指针 投射到
struct指针在 C 中也是不安全的,如此处所述。需要查看更多代码了解详情。