@property (copy, assign) NSString *title;
什麼是 之間的差別?
assign: 簡單指派,不更改索引計數(Reference Counting)。
copy: 建立一個索引計數為1的對象,然後釋放舊對象
retain:釋放舊的對象,将舊對象的值賦予輸入對象,再提高輸入對象的索引計數為1
retain的實際文法為:
- (void)setName:(NSString *)newName {
if (name != newName) {
[name release];
name = [newName retain];
// name’s retain count has been bumped up by 1
}
}
說了那麼麻煩,其實接下來的話最重要:
?如果你不懂怎麼使用他們,那麼就這樣 ->
使用assign: 對基礎資料類型 (NSInteger,CGFloat)和C資料類型(int, float, double, char, 等等)
使用copy: 對NSString
使用retain: 對其他NSObject和其子類
轉載:http://blog.csdn.net/bl1988530/article/details/6460279