本帖最后由 istream 于 2014-7-24 23:43 编辑
OC的内存管理其实很简单,用最简单的话来说assign,retain,copy的区别是:
assign: 浅拷贝(也就是直接赋值,适合基本类型)
retain: 浅拷贝+引用计数(OC引入引用计数来管理内存,节省了内存空间,比较推荐的方式)
copy: 深拷贝(这个是赋值的时候重新分配内存空间,然后实现内容拷贝)
还有一些其他的函数,比如autorelease, release等都是用来操作对象的引用计数的,只要分清楚assign, retain, copy的区别就完全可以了。当前,前提是先要搞清楚浅拷贝和深拷贝的概念。
|