【发布时间】:2016-02-24 16:10:26
【问题描述】:
copy 属性的典型用例是什么?
我什么时候应该复制一些值而不是仅仅增加引用计数,因为它可以通过strong 属性来实现?
【问题讨论】:
-
把两个
NSMutableString属性放到一个对象上,一个copy,一个strong。执行NSMutableString *string = [[NSMutableString alloc] initWithString:@"Hello "];并将其设置为对象的两个属性。记录这两个属性。然后执行[string appendString:@"World"];,再次记录这两个属性。你会看到的。执行相同操作并查看对象地址。 -
一个好的经验法则是:如果属性是指向采用
NSCopying协议的类的指针,则该属性应该具有copy属性,除非您有充分的理由不应该。
标签: ios objective-c properties