iOS基础知识总结
2020-03-23
OC
内存管理
内存管理的原理和原则
- 基本数据类型(
int,float,double,enum,struct,union等)和C语言的类型存储在栈区,由系统分配释放 - 继承自
NSObject的类属于OC类型,都遵循内存管理原则 - 谁创建,谁释放(
MRC程序员管理,ARC系统封装了编译时插入retain和release自动释放池等自动管理内存) OC方法调用的本质其实是给对象发送消息,需要引用时发送retain引用计数加1,释放时发送release引用计数减1,每个OC对象都有一个retainCount计数器占有4个字节MRC设置setter需要判断,存在旧值,则需要先把旧值释放release,然后新值retain之后赋值