//
// main.m
// 集合(数组)对象的内存管理(MRC中)
// #import <Foundation/Foundation.h>
#import "Person.h" int main(int argc, const char * argv[]) { @autoreleasepool { // 1. 如果将一个对象添加到一个数组中, 那么数组会对对象进行一个retain
Person *p = [Person new];
NSLog(@"reatinCount = %lu", [p retainCount]);
NSMutableArray *arrM = [[NSMutableArray alloc] init]; [arrM addObject:p];
NSLog(@"reatinCount = %lu", [p retainCount]); [p release];
NSLog(@"reatinCount = %lu", [p retainCount]);
// 当数组对象释放之后, 会给数组中所有的对象发送一条release消息
[arrM release]; Person *p = [Person new]; //
NSLog(@"reatinCount = %lu", [p retainCount]);
NSMutableArray *arrM = [[NSMutableArray alloc] init];
[arrM addObject:p]; //
NSLog(@"reatinCount = %lu", [p retainCount]); [p release]; // 1
// 当数组移除一个对象之后, 会给这个对象发送一条release消息
[arrM removeObject:p];
}
return ;
}

最新文章

  1. 一天一经典Reducing the Dimensionality of Data with Neural Networks [Science2006]
  2. 用CSS3实现背景的固定
  3. 在Salesforce中编写Unit Test
  4. IRaster、IRasterlayer、IRasterdataset之间的转换
  5. C# 类构造函数赋值里属性与字段赋值注意项
  6. solr6安装部署
  7. android访问webservices
  8. 使用SAE部署Flask,使用非SAE flask版本和第三方依赖包的方法
  9. Apache启动是出现the requested operation has failed
  10. hdu 4790 Just Random (2013成都J题) 数学思路题 容斥
  11. 性能测试工具比较:LoadRunner vs JMeter - 测试结果数据比较
  12. 计算机学院大学生程序设计竞赛(2015’12) 1004 Happy Value
  13. empty 语句
  14. java基础学习之&quot;堆&quot; &quot;栈&quot; &quot;静态存储区&quot; &quot;方法区&quot;
  15. mysql启动报错 mysql InnoDB: Error: could not open single-table tablespace file
  16. Activity的生命周期函数
  17. WebStorm连接Github教程
  18. Oracle体系结构之控制文件的多路复用技术
  19. Ubuntu dns
  20. selenium.common.exceptions.ElementNotVisibleException: Message: element not visible处理方法:selenium针对下拉菜单事件的处理

热门文章

  1. HTML 5 &lt;aside&gt; 标签
  2. DiscuzX2.5数据库字典 值得学习
  3. Python orm基础
  4. 在PL/SQL DEV里面有把锁一样的按钮,点击它会跳出“these query result are not updateable,include the ROWID to get updateab
  5. 「 COGS 1669 」 神秘的咒语
  6. Luogu P4014 「 网络流 24 题 」分配问题
  7. CCF201604-1 折点计数 java(100分)
  8. (一)python条件语句和基本数据类型
  9. dp专题备忘录
  10. 如何使用loadrunner进行web网站性能测试