黑马程序员技术交流社区

标题: 内存分配与回收问题 [打印本页]

作者: 。烊了    时间: 2014-12-5 10:05
标题: 内存分配与回收问题
  1. NSString * str = [[NSString alloc] init];
  2. str = @"I am a string~";
  3. [str release];
复制代码


上述代码 alloc 后,系统会为str 分配空间 ,然 会为 str 变量本身分配空间吗? 如果分配了,它们的地址相连吗?所占大小怎么算的?
还有,调用release方法后, str 变量本身是怎么回收的?
作者: 。烊了    时间: 2014-12-5 11:40
为嘛没人理我:(
作者: 丶有果灬    时间: 2014-12-5 12:27
面向对象思想,当我们创造一个new一个对象的时候,干了三件事,
1.分配存储单元、开辟空间,2.初始化成员变量,3.返回空间的地址
alloc构造方法,一看到alloc,只执行了第一步,然后计数器+1,release方法是-1,刚好做到回收。   
作者: 。烊了    时间: 2014-12-5 12:33
丶有果灬 发表于 2014-12-5 12:27
面向对象思想,当我们创造一个new一个对象的时候,干了三件事,
1.分配存储单元、开辟空间,2.初始化成员变 ...

那么我上面的str变量本身是如何分配空间的呢
还有它是如何回收内存的呢?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2