Avatar ·

Wie deklariere ich ein Array von Weak References in Swift?

Hallo zusammen! Ich bin neu in Swift und versuche, mich mit der Speicherverwaltung vertraut zu machen. Ich habe eine Klasse `Delegate`, die als Delegate für mehrere Objekte verwendet wird. Ich möchte eine Liste dieser Delegates in einem Array speichern, aber ich möchte nicht, dass das Array sie mit einer strong reference hält, da sonst Speicherlecks oder zirkuläre Referenzen entstehen würden. In Objective-C habe ich `NSPointerArray` mit der Option `NSPointerFunctionsWeakMemory` verwendet. Aber in Swift kann ich nicht einfach `weak var delegates: [Delegate]` schreiben – der Compiler gibt einen Fehler aus: `'weak' may only be applied to class and class-bound protocol types, not array`. Hier ist ein Beispiel meines Codes: ```swift class Delegate { weak var owner: SomeClass? func didSomething() { } } class SomeClass { // Wie mache ich dieses Array schwach? var delegates: [Delegate] } ```