Wenn ich eine vorhandene Struktur habe, aber ich möchte "Referenz" Verhalten verwenden, wie erreiche ich das?Wie man Struktur als Referenz übergeben?
kann ich einige einfache Klasse Halter wie
class Box<T> {
var value: T
init(_ value: T) {
self.value = value
}
}
schreibe ich denke, es gibt in der Standard-Bibliothek bereit Klasse sein muss, aber ich fand es nicht.
Ich möchte diese Referenz in meiner Klasse speichern, so inout Parameter ist nicht das, was ich brauche.
Würde für Ihre Zwecke ein 'CLASS' besser geeignet sein? Sie werden als Referenz weitergegeben. Instanzen von 'struct' sind so konzipiert, dass sie als Wert übergeben werden. – sapi
Das würde mein Problem lösen, aber das bedeutet, dass ich bestehende Framework-Struktur wie CGRect duplizieren und Konvertierungen hin und her implementieren muss. Ich möchte, wenn möglich, Doppelarbeit vermeiden. – vbezhenar
@sapi: Alles in Swift wird immer als Wert übergeben, es sei denn, der Parameter ist mit 'inout' gekennzeichnet. In diesem Fall wird er immer als Referenz übergeben. – newacct