gpt4 book ai didi

iphone - iOS 5 实例变量

转载 作者:技术小花猫 更新时间:2023-10-29 10:16:08 25 4
gpt4 key购买 nike

我对 ARC 的工作原理有点困惑,我知道有自动引用计数,但即使分配原始实例变量(不使用属性),此功能是否也有效。

例如,如果我有一个实例变量arr:

@interface TestClass : NSObject {
NSArray *arr;
}

现在,如果在方法内部,我使用自动释放的 NSArray 分配它:

- (IBAction)test {
arr = [NSArray arrayWithObject:@"TEST"];
}

这个数组会发生什么?它是否只是神奇地保留它直到 arr 被重新分配给其他东西?

现在如果我做类似的事情:

self.arr = [NSArray arrayWithObject:@"TEST"];

如果强对弱会怎样?

最佳答案

是的,ARC 适用于原始 ivar 访问。就像局部变量一样,ivars 是隐式的 __strong 除非用 __weak__unsafe_unretained 修饰。因此,默认情况下,它们的行为就像标记为 strong(或 retain,在 ARC 下是 strong 的同义词)的属性。

关于iphone - iOS 5 实例变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7774501/

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