A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© shenlongzs 中级黑马   /  2014-4-2 22:16  /  828 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 shenlongzs 于 2014-4-4 22:33 编辑

NSMutableArray * arr = [NSMutableArray arrayWithCapacity:0];

NSDictionary * dic = [[NSDictionary alloc]init];
[arr addObject:dic];

dic = [[NSDictionary alloc]init];
[arr addObject:dic];

dic = [[NSDictionary alloc]init];
[arr addObject:dic];
[dic release];
[dic release];
   [dic release];


哪位知道以上代码错在哪,请给与解惑?

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

1 个回复

倒序浏览
最后的三个release有问题,应该在改变指针指向时先release。如:
  1. NSMutableArray * arr = [NSMutableArray arrayWithCapacity:0];

  2. NSDictionary * dic = [[NSDictionary alloc]init];
  3. [arr addObject:dic];
  4. [dic release];

  5. dic = [[NSDictionary alloc]init];
  6. [arr addObject:dic];
  7. [dic release];

  8. dic = [[NSDictionary alloc]init];
  9. [arr addObject:dic];
  10. [dic release];
复制代码

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马