zoukankan      html  css  js  c++  java
  • NSArray,NSMutableArray的使用与内存问题

    关于NSArray,NSMutableArray的使用与内存问题(仅个人在使用过程中体会)

    偶已几种方式建立说明如下:

    第一种:
    1. FirstArray = [[NSArray arrayWithObjects:
    2.                   @"a",
    3.                   @"b",
    4.                   @"c",nil] retain];
    5. NSLog(@"FirstArray%d",[FirstArray count]);
    6. NSLog(@"FirstArray%d",[FirstArray retainCount]);


    此方式返回的retainCount为2,程序难免会leak,不过一般也不会,小心为好。

    第二种:
    1. FirstArray = [NSArray arrayWithObjects:
    2.                   @"a",
    3.                   @"b",
    4.                   @"c",nil];
    5. NSLog(@"FirstArray%d",[FirstArray count]);
    6. NSLog(@"FirstArray%d",[FirstArray retainCount]);

    此方式返回的retainCount为1,但后面用到时,程序会Crash。


    第三种:
    1. NSArray *First = [[NSArray alloc] initWithObjects:
    2.                        @"a",
    3.                        @"b",
    4.                        @"c",nil];
    5.     self.FirstArray=First;
    6.     [First release];
    7. NSLog(@"FirstArray%d",[FirstArray count]);
    8. NSLog(@"FirstArray%d",[FirstArray retainCount]);

    此方式返回的retainCount为1,程序正常运行,不会leak...


    建议使用第三种,NSMutableArray同NSArray操作。
  • 相关阅读:
    博客链接--竹子
    升级sudo至1.9.5p2,修复sudo漏洞
    使用Jenkins自动打包部署前端
    升级sudo至1.9.5p2,修复sudo漏洞
    60行C代码实现一个shell
    copy_{to, from}_user()的思考
    Code Server 是什么?
    Linux常用命令学习(5)
    Linux sudo权限提升漏洞(CVE-2021-3156)
    厚书读薄丨《Vim实用技巧》第一部分 模式
  • 原文地址:https://www.cnblogs.com/jeekun/p/2043035.html
Copyright © 2011-2022 走看看