------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!-------
内存管理的范围
所有的集成了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已经释放了,而堆区的空间没有释放,堆区的空间就被泄露了