2016-02-29 58 views
0

enter image description here如何使用Swift將IMP轉換爲NSValue?

我想將實現轉換爲NSValue,但它是錯誤的。

在Objective-C,可以使用此行來轉換:

[NSValue valueWithPointer:implementation] 

但是在斯威夫特,如何轉換?

+1

爲什麼你需要轉換它? – matt

+0

我想存儲實現來檢查一些東西。謝謝。 –

+0

但是在Swift中你可以存儲Imp。那NSValue的東西就是這樣,你可以傳遞一個需要ObjectiveC對象的Imp。但在Swift中它已經是任何對象。那麼爲什麼要轉換呢? – matt

回答

1

正如它所說的,它需要一個UnsafePointer而不是COpaquePointer。所以轉換它:

let impValue = NSValue(pointer: UnsafePointer(imp)) 
相關問題