weak
ดูเหมือนว่าการอ้างอิงจะไม่ทำงานใน Swift ยกเว้นว่ามีการprotocol
ประกาศเป็น@objc
ซึ่งฉันไม่ต้องการในแอพ Swift ที่บริสุทธิ์
รหัสนี้ให้ข้อผิดพลาดในการคอมไพล์ ( weak
ไม่สามารถใช้กับประเภทที่ไม่ใช่คลาสMyClassDelegate
):
class MyClass {
weak var delegate: MyClassDelegate?
}
protocol MyClassDelegate {
}
ฉันต้องนำหน้าโปรโตคอลด้วย@objc
แล้วก็ใช้งานได้
คำถาม: อะไรคือวิธีที่รวดเร็ว 'บริสุทธิ์' ในการบรรลุเป้าหมายweak
delegate
?