在我将一个对象分配给该对象可能已经分配给的 ivar 的情况下,首先检查它是否已经分配给该 ivar 有什么好处。
例如,代码 A 相对于代码 B 有什么好处吗?
一个
if (ivar != anObject)
{
ivar = anObject;
}
B
ivar = anObject;
最佳答案
这并不是绝对必要的,我相信 @property/@synthesize 生成的 setter 这样做是一种优化,并阻止对同一对象进行不必要的内存管理调用(对于强属性,旧对象被释放,新对象被保留,但如果它们是相同的指针,最终结果是保留计数不变)
关于iphone - 当已分配给特定 ivar 时将对象分配给 ivar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11482538/