Swift LanguagePuntatori di buffer (non sicuri)


introduzione

"Un puntatore del buffer viene utilizzato per l'accesso a basso livello a una regione di memoria. Ad esempio, è possibile utilizzare un puntatore del buffer per l'elaborazione efficiente e la comunicazione dei dati tra app e servizi. "

Estratto da: Apple Inc. "Uso di Swift con Cocoa e Objective-C (Swift 3.1 Edition)." IBooks. https://itun.es/us/utTW7.l

Sei responsabile della gestione del ciclo di vita di qualsiasi memoria con cui lavori con i puntatori del buffer, per evitare perdite o comportamenti non definiti.

Osservazioni

Concetti strettamente allineati richiesti per completare la comprensione dei BufferPointer (non sicuri).

  • MemoryLayout ( il layout di memoria di un tipo, descrivendo le sue dimensioni, passo e allineamento ).
  • Non gestito ( Un tipo per propagare un riferimento a un oggetto non gestito .)
  • UnsafeBufferPointer ( un'interfaccia di raccolta non proprietaria di un buffer di elementi memorizzati in modo contiguo nella memoria ).
  • UnsafeBufferPointerIterator ( un iteratore per gli elementi nel buffer a cui fa riferimento un'istanza UnsafeBufferPointer o UnsafeMutableBufferPointer ).
  • UnsafeMutableBufferPointer ( un'interfaccia di raccolta non proprietaria di un buffer di elementi mutabili memorizzati in modo contiguo nella memoria ) .
  • UnsafeMutablePointer ( puntatore per l'accesso e la manipolazione dei dati di un tipo specifico ) .
  • UnsafeMutableRawBufferPointer ( Un'interfaccia di raccolta nono mutabile per i byte in una regione di memoria. )
  • UnsafeMutableRawBufferPointer.Iterator ( un iteratore sui byte visualizzati da un puntatore del buffer raw ) .
  • UnsafeMutableRawPointer ( Un puntatore raw per accedere e manipolare dati non tipizzati ) .
  • UnsafePointer ( puntatore per accedere ai dati di un tipo specifico ) .
  • UnsafeRawBufferPointer ( un'interfaccia di raccolta nonown ai byte in una regione di memoria ) .
  • UnsafeRawBufferPointer.Iterator ( un iteratore sui byte visualizzati da un puntatore del buffer raw ) .
  • UnsafeRawPointer ( Un puntatore raw per accedere a dati non tipizzati ) .

(Fonte, Swiftdoc.org )

Puntatori di buffer (non sicuri) Esempi correlati