一:OC内存管理机制目前分为两块,其一自动内存管理机制,其二手动内存管理机制:
1.首先我们从自动内存管理机制讲起:
1)什么是自动内存管理机制,自动内存管理机制就是程序中所创造的成员变量交由系统统一处理,不需要外部人员干预,有点像java中gc(垃圾回收机制)。
2)之前是没有自动内存管理机制的,后期苹果想拓展自己的开发市场,吸引其他平台开发者入住ios开发阵营,其中收到内存管理是很发杂的一块,对于转入IOS开发者不利,因此苹果推出了自动内存管理机制。
2.接下来我们将手动内存管理机制:
1)什么又是手动内存管理机制,很好理解,其实参与内存销毁动作交给了程序员去管理,原则是谁创建对象谁销毁对象(内存配对原则)。
二:OC内存管理开发中需要主要那些,其一野指针,其二内存泄漏:
1)那么什么又是野指针,根据网上的理解,指针所指的对象已经被销毁,但后续还在使用该指针,此时指针指向了一个什么都不是的东西,我们称它为野指针,那么如何防止野指针的,一般处理的方式是对象进行release操作后,在赋值对象nil值。
2)那么什么是内存泄漏,根据网上的理解,在操作对象是没有遵循内存配对原则,创建了对象了,却未对对象进行销毁,此时这个未被销毁的对象就是我们所谓的内存中泄漏的对象,这种行为也就是所谓的内存泄漏,内存泄漏不会影响对象的正常运行,但会影响程序的效率。
备注:以上所述为个人理解,或许会有不对,真诚希望阁下提出自己宝贵意见。