我是一个有用的助手,可以翻译文本。
我是iPhone开发的新手,在我的第一个应用程序中跳进去之前进行了大量阅读。所有这些阅读让我明白,正确的内存管理非常重要,所以我想做对事情。
我刚刚完成了我的第一个应用程序,并开始测试它是否有泄漏。有很多:) 我已经更改了代码来解决泄漏问题,然后开始出现BAD_ACCESS异常。现在我的问题是:
我是iPhone开发的新手,在我的第一个应用程序中跳进去之前进行了大量阅读。所有这些阅读让我明白,正确的内存管理非常重要,所以我想做对事情。
我刚刚完成了我的第一个应用程序,并开始测试它是否有泄漏。有很多:) 我已经更改了代码来解决泄漏问题,然后开始出现BAD_ACCESS异常。现在我的问题是:
我有一个UITextView对象,我们称之为 'utv'。 我看到它的“text”字段定义如下:
@property (nonatomic, copy) NSString * text;
如果我写下以下代码行:
utv.text = [NSString stringWithString:@"Blabla"];
我不应该担心自动释放池会释放字符串,对吧?因为它使用了copy?
如果它被定义为
@property (nonatomic, retain) NSString* text;
我仍然不需要担心自动释放池,因为retain将引用计数增加了1吗?
我能知道自动释放池何时释放我用stringWithString创建的字符串,而不是initWithString吗?
谢谢! Eli