IOS 开发中常用到的修饰符有:assgin,retain,copy,strong,weak,atomic(这里说的是arc下)
1:assgin
简单的赋值 不更改索引计数 一般修饰的是基本的数据类型 如:NSIntger,CGFloat,int,float,double,char 这里要知道 基本的数据类型是分配在栈上的 栈的内存会由系统自己处理
写法:@property (nonatomic,assign) float number;
注:assgin 也可以修饰对象;一般情况下不会使用,是因为被assgin 修饰的对象在释放之后,指针的地址还是存在的,也就是说指针并没有被置为nil,从而引起也指针的问题。对象一般分配在堆上的某块内存,如果在后续的内存分配中,刚好分配到了这块地址,程序就会crash
2:retain
释放旧的对象,将旧对象的值赋予输入对象,同时进行引用计数加1.
3:copy
4:strong
5:weak
网友评论