gpt4 book ai didi

iphone - 为什么自动生成的 iOS Apple 代码使用实例变量而不是属性?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:52:04 25 4
gpt4 key购买 nike

我在 ARC 之前做了很多 iOS 开发。现在有了 ARC,我注意到 Apple 生成的代码正在使用实例变量而不是属性。这是为什么?

例如一个主从 View Controller - 在 DetailView 上我们看到这个:

- (void)setDetailItem:(id)newDetailItem
{
if (_detailItem != newDetailItem) {
_detailItem = newDetailItem;

// Update the view.
[self configureView];
}
}

为什么不是 self.detailItem = newDetailItem;?当我第一次学习 iOS 开发时,推荐的做法是使用属性。

最佳答案

它会创建一个不定式递归循环。由于 self.detailItem = obj;调用:

- (void)setDetailItem:(id)newDetailItem

关于“_”,当您不对它进行合成时,它就是变量的命名方式。如果你愿意,你可以改变它,尽管我认为没有理由这样做。

关于iphone - 为什么自动生成的 iOS Apple 代码使用实例变量而不是属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19386616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com