在cocoa编程当中,比较常用的一块,就是属性设置,就是自动为变量添加setter和getter方法,这些方法的添加,涉及到了属性的设置,那么这些属性的含义如何哪?
首先,属性的定义格式:@property (attributes) type name
对于property 的取值有,retain,copy,assign,atomic,nonatomic,read,reaDWrite,Readonly等等。往往另一迷惑的是这些定义的含义。
assign,简单来说,是非OC对象赋值。
retain, 是OC对象的赋值,即retain级数会增加。
copy,通常对字符串生效,完成一个字符串的拷贝。
atomic,这个可以与上述的三个属性共同使用,他是描述该变量是否支持多线程的同步访问,如果选择了atomic 那么就是说,系统会自动的创建lock锁,锁定变量。
总结以上是内存溢出为你收集整理的关于变量属性的retain,copy,assign,atomic,nonatomic的差别全部内容,希望文章能够帮你解决关于变量属性的retain,copy,assign,atomic,nonatomic的差别所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)