gpt4 book ai didi

objective-c - 对于强集合实例,赋值给nil等于释放赋值给nil吗?

转载 作者:行者123 更新时间:2023-11-28 18:13:30 24 4
gpt4 key购买 nike

所以我有一个强集合变量x(例如NSMutableArray类型),在做dealloc的时候,如果我只做x = nil,是不是和下面一样的效果?

[x removeAllObjects]; 
[x release]; // not needed in ARC
x = nil;

最佳答案

严格来说,两者并不相同。将 strong 变量设置为 nil 确实会释放该对象。但是,数组只有在被销毁时才会removeAllObjects。如果另一个变量持有对该数组的强引用,它将保持事件状态并且不会删除它包含的项目。

关于objective-c - 对于强集合实例,赋值给nil等于释放赋值给nil吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10884155/

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