weak
Referenzen scheinen in Swift nicht zu funktionieren, es sei denn, ein protocol
ist als @objc
deklariert, was ich nicht in einer reinen Swift-App haben möchte.
Dieser Code erzeugt einen Kompilierfehler (weak
kann nicht für den Nicht-Klassentyp MyClassDelegate
angewendet werden):
class MyClass {
weak var delegate: MyClassDelegate?
}
protocol MyClassDelegate {
}
Ich muss das Protokoll mit @objc
versehen, dann funktioniert es.
Frage: Was ist der 'reine' Swift-Weg, um einen weak
delegate
zu realisieren?