我使用的是AppCode
,它在一個非常大的項目的代碼中標記了一個有趣的情況。弧前。iOS:不明確的屬性綜合行爲。遺傳相關
子類定義併合成一個名爲delegate的屬性。其實財產聲明已被註釋掉!但是@synthesize delegate = delegate_;
聲明落後了。
代碼編譯,大概是因爲基類定義和綜合屬性也被稱爲委託,並與具有相同名稱的後盾變量合成它:@synthesize delegate = delegate_;
我的問題是:有消息會發生什麼被髮送到委託在子類的方法
a)所述基類的方法及
b)中。
AppCode
標誌在子類的合成語句作爲一個錯誤:
Accessors of property 'delegate' were already synthesized with instance variable 'delegate_'
委託獲取器/設置器被子類的綜合覆蓋,因此不再有對基類實現的訪問(除非深入到技巧的ObjectiveC運行時框中)。 – Till