内存管理autolease, retain, assign, copy的set方法和含义?

来源:互联网 发布:网络销售门票协议书 编辑:程序博客网 时间:2024/06/04 19:32

当你初始化一个对象时,即init或alloc一个对象时,就需要将这个对象释放掉,而这时就会用到release,或者autorelease了

autorelease用于ARC中,在ARC中,内存的引用计数是不需要手动管理的,所有的管理都是有系统进行统一的管理

release用于MRC,当你初始化一个对象,或者retain,copy时, 都需要将这个对象释放掉.在MRC中所有的引用计数都是需要手动进行管理的

alloc或init建立的对象,索引计数为1,无需将其再次retain.

NsData或NsArray等方法建立一个索引计数为1的对象,是一个自动释放的对象,如果想在全局中使用,一定要retain.

另外,数组对象会retain任何数组中的对象,当数组被dealloc时,数组中的所有对象都会被执行一次释放(release).

retain值=索引计数

0 0
原创粉丝点击