gpt4 book ai didi

iphone - Objective-C 中的私有(private)变量是否强大?

转载 作者:太空狗 更新时间:2023-10-30 03:34:35 26 4
gpt4 key购买 nike

所以搜索 Stack Overflow 这似乎是如何在 Objective-C 中创建私有(private)变量:

@interface ClassName()
{
@private
NSArray* private;
}
@property (strong, nonatomic) NSArray* public;
@end

这就是我感到困惑的地方。该属性声明为 (strong, nonatomic),但私有(private)变量没有任何此类内容。那么arc怎么知道强不强呢?

最佳答案

实例变量默认为__strong

来自 Apple's ARC Transition Guide ,关于变量(假定包括实例变量):

__strong is the default

及以后:

With ARC, instance variables are strong references by default—assigning an object to an instance variable directly does extend the lifetime of the object

在通过 @synthesize 将属性连接到 ivar 之前,这一直有效。此时,属性(property)的所有权限定符优先。但是,如果您将属性声明为非强属性,然后手动实现 setter 和 getter,则您还必须手动声明支持 ivar 的所有权限定符。

关于iphone - Objective-C 中的私有(private)变量是否强大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15601097/

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