gpt4 book ai didi

ios - Objective-C NSMutableArray alloc init 在已经声明的对象上

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:27:56 26 4
gpt4 key购买 nike

我的任务是“清理”其他人的 Objective-C 代码。我承认,这当然不是我最喜欢的语言。

我在这个用户的代码中发现的一个对我来说似乎多余的方法是:

if (favoriteItemsArray || [favoriteItemsArray count] > 0) {
[favoriteItemsArray removeAllObjects];
favoriteItemsArray = nil;
}

if (favoriteOrderArray || [favoriteOrderArray count] > 0) {
[favoriteOrderArray removeAllObjects];
favoriteOrderArray = nil;
}

favoriteItemsArray = [[NSMutableArray alloc] init];
favoriteOrderArray = [[NSMutableArray alloc] init];

我想和大家仔细核实一下,看看我是否对 JAVA 太习惯了,但是这段代码不能压缩到最后两行,只是说:

favoriteItemsArray = [[NSMutableArray alloc] init];
favoriteOrderArray = [[NSMutableArray alloc] init];

如果没有,谁能解释一下?

这又不是我的代码..

最佳答案

你是对的。您可以删除代码的第一部分(如果 ARC 用于引用计数)。当数组重新分配时,之前的数组将被释放,因为保留计数将达到零,数组中的所有对象也将被释放。

关于ios - Objective-C NSMutableArray alloc init 在已经声明的对象上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25002781/

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