2017-04-23 1 views
1

In C & Objective C verwendeten wir zu dereferenzieren einen Zeiger und den Wert erhalten, wie folgt:Pointer Dereferenzierung Swift

p->a = 1 
    or int x = p->a 

Aber ich kann kein Äquivalent in Swift finden. Ich habe einen Rückgabetyp UnsafePointer zu AudioStreamBasicDescription?, deren Mitgliedswerte ich lesen muss.

+0

Greifen Sie einfach auf die Strukturelemente mit einem '.' zu. Siehe http://stackoverflow.com/questions/31439906/converting-a-swift-unsafepointeraudiostreambasicdescription-to-a-dictionary – Paulw11

Antwort

6

Sie verwenden die Eigenschaft pointee auf Ihrem UnsafePointer, um auf den Speicher zuzugreifen, auf den er zeigt. Ihr C-Beispiel würde also lauten: let x = p.pointee.a.