gpt4 book ai didi

iphone内存管理和数组

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

我仍在努力研究 iphone 内存管理。我已经用泄漏检查过这个,但我想确定一下。这没有泄漏吗?

NSMutableArray *array = [[NSMUtableArray alloc] init];
NSMutableString *str = [[NSMutableString alloc]];

[str appendstring:@"hi"];

[array addObject:str];

[str release]; //this is the bit I am most concerned about


...some processing of array occurs...

[array release];

最佳答案

假设你的第二行实际上是这样的:

NSMutableString *str = [[NSMutableString alloc] init];

那么是的,这没有泄漏。当您将字符串添加到数组中时,数组会获得该字符串的所有权权益,因此您释放您对它的所有权的后续语句是可以的。它仍然按预期存在于数组中。

当您释放数组时,它会清理自己的引用,包括指向您放入其中的字符串的引用。

关于iphone内存管理和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8191547/

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