我有一個類,其實例變量爲NSArray
,我知道應該從同一個超類繼承不同的對象。我的問題是如何從另一個類(其控制器)訪問實例變量和方法,同時確保數組內容僅包含某個類的子類的對象?我嘗試實現一個最小協議,並將數組中的對象作爲id
和(id *)
類型的對象進行響應,但不會讓我訪問數組中任何實例變量或類的方法(以及正確的方法)。 在對象文件訪問子類實例
NSArray* components; // contains subclasses of component
在控制器文件
subclassofClassObject* object;
是有subclassOf功能,宏的typedef ...等或一種解決方法,所以我可以在一個子類參考分量的子類對象來自控制器的子類。即要替換subclassofClass。
你確定需要'id *'類型的變量嗎?這將是一個指向'id'的指針,它已經是一個指向Cocoa對象的指針了。 – Monolo