Kommend von JS, und versuchen, [JSON] durch Verweis in Swift übergeben, was nicht möglich ist, also versuche ich es in das Objekt zu wickeln, und machte ein einfaches Beispiel mit einem primitiven, was immer noch nicht funktioniert, wie kann ich Mitglied a einhüllen, so dass Änderungen in referenzierten Objekt a beeinflussen b? Dankswift: durch Referenz
class ExampleA {
var a = 0
init(a: Int) {
self.a = a
}
}
class ExampleB {
var a = 0
init(a: Int) {
self.a = a
}
func process(inout p: ExampleA) {
self.a = p.a
print(p.a)
}
}
var a = ExampleA(a: 15)
var b = ExampleB(a: 10)
b.process(&a)
print(b.a) // "15\n"
a.a = 25 // this does nothing to b????
print(b.a) // "15\n"
Warum es 'b' auswirken würde? Sie rufen nicht 'process' auf, nachdem Sie' a.a' geändert haben. –
Sie sollten eine explizite Delegatenstruktur einrichten, um die Werte basierend auf anderen zu ändern. Sie sollten nicht einfach implizit "magisch" ihre Werte ändern. – luk2302
gibt es keine Möglichkeit, auf etwas wie in JS zu verweisen, um Änderungen sofort wiederzugeben, wenn sich die Werte im referenzierten Objekt ändern? –