如果阵列在内存中,我们如何检查?
我有条件需要它
以下代码是正确的,以释放数组
if (array1)
{
[array1 release];
}
谢谢
答案 0 :(得分:6)
您不应该检查Obj-C上对象的保留计数。充其量这个数字几乎不用于调试,在最坏的情况下它是非常误导的。如果您练习正确的内存管理技术,则永远不需要检查保留计数。
如果您在内存管理方面遇到问题,请发布更多代码,我们可以帮助您找出问题所在。另外,如果你还没读过,你应该这样做。
答案 1 :(得分:0)
遗憾的是,除了retainCount
之外,您需要了解有关array1的更多信息,以及它是否为nil
。如果您指向在其他位置发布的对象,则调用retainCount
可能会导致程序崩溃或返回完全垃圾。
[删除了我关于自动释放的评论 - 它被误导了。以上仍然是真的!]
答案 2 :(得分:-3)
如果条件正确。使用它可以检查数组是否在内存中。释放数组后,您也应该分配nil。所以它将完全从记忆中删除。
干杯, Raxit