内存管理 对象如果不再使用了,就应该回收它的空间,防止造成内存泄露
内存管理的范围 所有的集成了NSObject的对象的内存管理 基本数据类型(int double float char struct enum)的数据内存不需要我们进行管理 内存管理的原则 1) 只要还有人在使用某个对象,那么这个对象就不会被回收; 只要你想使用这个对象,那么就应该让这个对象的引用计数器+1; 当你不想使用这个对象时,应该让对象的引用计数器-1; 2)谁创建(new alloc init copy) 谁release 3)谁retain 谁 release 内存管理研究的内容: 1)野指针: i.定义的指针变量没有初始化 ii.指向的空间已经被释放了 2)内存泄露: Person *p = [Person new]; p 栈区 [Person new] 堆区 如果栈区的p已经释放了,而堆区的空间没有释放,堆区的空间就被泄露了
|