Unmanaged.passUnretained(个体).toOpaque()来夫特3

问题描述:

我有以下错误:Unmanaged.passUnretained(个体).toOpaque()来夫特3

enter image description here

的图像中的代码行是这样的:

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

我不知道如何解决这个问题。我没有看这个:

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

,但是,我不知道如何正确地修正这个错误。

任何帮助?

+4

请出示代码,而不是代码的图片。谢谢! – matt

+0

重复http://*.com/questions/30786883/swift-2-unsafemutablepointervoid-to-object? –

这似乎工作:

context.info = UnsafeMutablePointer(OpaquePointer(bitPattern: Unmanaged.passUnretained(self))) 
+0

你是否也有一个实现反转的方法,即从'context.info'中以类似的方式提取'mySelf'? – Drux

UnsafeMutableRawPointer(Unmanaged.passUnretained(self).toOpaque()) 

作品对我来说