2012-01-24 99 views
0

我有我的財產以下ARC靜態接口問題

@property (nonatomic,readonly) NSString itemName; 

原本只讀==複製我試圖遷移到ARC所以試圖分配||強但都失敗了

與生成錯誤:

Interface type cannot be statically allocated

有人可以幫助我在這裏我不明白這條消息?

回答

1

您需要將此更改爲:

@property (nonatomic,readonly) NSString* itemName; 

你錯過了哪些正確地變成一個NSString參考此星號。

+0

你有沒有從內存角度解釋這些屬性關鍵詞的鏈接? – codejunkie

+0

除了Objective-C 2.0參考,no。但這很明顯。你不能分配一個靜態的Cocoa對象作爲一個屬性。現在將'readonly'改爲'strong',並且使用正確的'NSString *'類型,你會好起來的。你不會傳遞可可對象 - 你傳遞指向可可對象的指針。 – Abizern