何时在iPhone中发布NSString

何时在iPhone中发布NSString,第1张

概述我有以下方法 -(NSMutableArray *) getPaises { NSMutableArray * paises; paises = [[NSMutableArray alloc] init]; while( get new row ) { NSString *aPais = [NSString stringWithUTF8String:(c 我有以下方法

-(NSMutableArray *) getPaises {     NSMutableArray * paises;     paises = [[NSMutableArray alloc] init];     while( get new row ) {      Nsstring *aPais =  [Nsstring stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement,0)];      [paises addobject:aPais];     }     return paises;    }

我不会发布aPais,因为如果我这样做,应用程序崩溃.我不知道在使用它之后是否应该释放它,如果是的话,我该怎么做呢?刚释放NSMutableArray就够了?还是要遍历它并释放每个对象?

如果我不需要释放它,谁负责释放?

解决方法 正如epatel所说,你不需要释放那个特定的字符串.如果你想要更积极主动,你可以这样做:

-(NSMutableArray *) getPaises {    NSMutableArray * paises;    paises = [[[NSMutableArray alloc] init] autorelease];    while( get new row ) {        Nsstring *aPais =  [[Nsstring alloc] initWithUTF8String:(char *)sqlite3_column_text(compiledStatement,0)];        [paises addobject:aPais];        [aPais release];    }    return paises;}

综上所述:

> [[Nsstring alloc] initWith …] – >你必须释放或自动释放.
> [Nsstring stringWith …] – >无需释放.

– 编辑:添加了自动发送,当你返回它.当你返回一个对象时,如果你已经分配了& init’d,那么总是自动释放它.

总结

以上是内存溢出为你收集整理的何时在iPhone中发布NSString全部内容,希望文章能够帮你解决何时在iPhone中发布NSString所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1029347.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存