iOS 属性修饰符

2020-10-13  本文已影响0人  自律_自强_通达

iOS属性问题

属性修饰符的作用

iOS5之前是MRC, 内存需要程序员管理,iOS之后是ARC,除非特殊情况(例如:使用C框架或者循环引用)不需要程序员手动管理内存。

iOS中当我们定义属性@property的时候,就需要属性修饰符,

主要属性修饰符

  1. copy
  2. assign
  3. retain
  4. strong
  5. weak
  6. readwrite/readonly(读写策略,访问权限)
  7. nonatomic/atomic(安全策略)

根据MRC和ARC划分属性修饰符的使用范围

//MRC:nonatomic,atomic,retain,assign,copy,readwrite,readonly
//ARC:nonatomic,atomic,strong,weak,assign,copy,readwrite,readonly

什么影响retainCount计数

1. alloc方法是为了对象分配内存,retaincount 为1
2. retainCount :引用计数,下面简称计数
3. release 对象计数 -1
4. retain 计数 +1。
5. copy 一个对象会变成一个新的对象,这个对象的计数为1,原有的对象计数不变。 

不管MRC还是ARC,对象的释放都依据reference count是否为0,

修饰符详述

上一篇 下一篇

猜你喜欢

热点阅读