Unmanaged.passUnretained(self).toOpaque() 到 Swift 3

Unmanaged.passUnretained(self).toOpaque() to Swift 3

我有以下错误:

图中的代码行是这样的:

context.info = UnsafeMutablePointer(Unmanaged.passUnretained(self).toOpaque())

我不知道如何解决这个问题。我确实调查过这个:

https://github.com/apple/swift-evolution/blob/master/proposals/0017-convert-unmanaged-to-use-unsafepointer.md

但是,我不确定如何正确修复错误。

有什么帮助吗?

这似乎有效:

context.info = UnsafeMutablePointer(OpaquePointer(bitPattern: Unmanaged.passUnretained(self)))
UnsafeMutableRawPointer(Unmanaged.passUnretained(self).toOpaque())

适合我