0

在我将对象分配给可能已经分配给该对象的 ivar 的情况下,首先检查它是否已分配给该 ivar 有什么好处。

例如,编码A比编码B有什么好处吗?

一种

if (ivar != anObject)
{
    ivar = anObject;
}

ivar = anObject;
4

1 回答 1

1

它不是绝对必要的,我相信@property/@synthesize 生成的setter 这样做是为了优化并停止对同一对象的不必要的内存管理调用(对于强属性,旧对象被释放并保留新对象,但是如果它们是相同的指针,最终结果是保留计数不变)

于 2012-07-14T09:37:28.640 回答