Mam mały problem z mojego kodu po aktualizacji do Swift 3. Miałem ten kod przed przebudową:Swift: Nie można przekonwertować wartości typu „UnsafeMutablePointer” do oczekiwanego typu argumentu „UnsafeMutablePointer”
extension NSData {
func castToCPointer<T>() -> T {
let mem = UnsafeMutablePointer<T>.alloc(sizeof(T.Type))
self.getBytes(mem, length: sizeof(T.Type))
return mem.move()
}
}
I i konwertowane go do niniejszego Kodeksu oraz w 3. wierszu pojawia się błąd
... nie można przekonwertować wartości typu „” do oczekiwanego UnsafeMutablePointer typu argumentu „UnsafeMutablePointer”
extension Data {
func castToCPointer<T>() -> T{
let mem = UnsafeMutablePointer<T>.allocate(capacity: MemoryLayout<T.Type>.size)
self.copyBytes(to: mem, count: MemoryLayout<T.Type>.size)
//self.copyBytes(to: mem, count: MemoryLayout<T.Type>.size)
return mem.move()
}
}
Czy ktoś wie, jak się tego pozbyć?
Dziękuję :) ostatni pracował doskonale!! –