gpt4 book ai didi

iphone - Objective-c中释放变量的正确方式

转载 作者:太空狗 更新时间:2023-10-30 03:59:50 25 4
gpt4 key购买 nike

我知道在 Objective-c 中有一种非常简单的方法来声明这样的变量:

NSArray* myArray;

@property(retain) NSArray* myArray;

@synthesize myArray;

这样你就可以在保留变量的同时使用 self.myArray 作为 setter 和 getter。然而,这也会让你做一件事,那就是避免你自己使用 dealloc。据我了解,这两行是相同的:

self.myArray = nil;
[myArray release];

我的问题是,哪一种是首选方式?是否存在其中一个有效而另一个无效的情况?

编辑:抱歉,我的意思是释放,而不是解除分配...

最佳答案

你永远不应该自己调用 dealloc(除非在非常非常规的情况下)。

您应该调用 [myArray release] 而不是 dealloc,并让已发布的进程为您处理这件事。

看看here有关 dealloc 方法的更多信息,也可能比您希望的更多。

关于iphone - Objective-c中释放变量的正确方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4572561/

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