weakreferensi tampaknya tidak berfungsi di Swift kecuali protocoldinyatakan sebagai @objc, yang saya tidak inginkan dalam aplikasi Swift murni.
Kode ini memberikan kesalahan kompilasi ( weaktidak dapat diterapkan ke tipe non-kelas MyClassDelegate):
class MyClass {
weak var delegate: MyClassDelegate?
}
protocol MyClassDelegate {
}
Saya perlu awalan protokol dengan @objc, lalu berfungsi.
Pertanyaan: Apa cara Swift 'murni' untuk mencapai a weak delegate?