iphone - 当已分配给特定 ivar 时将对象分配给 ivar

标签 iphone objective-c ios ipad

在我将一个对象分配给该对象可能已经分配给的 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/

相关文章:

iphone - 写入 UITextView

iphone - CGLayer 和抗锯齿 CGPath

iphone - 推送 UIViewController 时隐藏 UITabBarController 的标签栏

java - 将 cron 表达式转换为漂亮的描述字符串?有 JAVA 和 Objective-C 的库吗?

objective-c - 如何将 Chartboost IOS SDK 与 Swift 集成

ios - 在 ViewController 之间传递数据可以正常工作,但不能与 Tab Bar Controller 一起传递

ios - 按下通话按钮时关闭 CNContactPickerViewController

ios - 导航栏可以固定在特定位置吗?

ios - 如何实现图像组?

ios - 如何以编程方式设置 UILabels 的约束,其中 Label Count 等于 Swift 中的主屏幕高度