/**
copy : NSString
strong: 一般对象
weak: UI控件
assign:基本数据类型
*/
如 @property (nonatomic,copy)NSString *name; //NSString
//一般对象
@property (nonatomic,strong)MJApp *app;
@property (nonatomic,strong)NSArray *apps;
//UI控件
@property (nonatomic,weak)UIScrollView *scrollView;
@property (nonatomic,weak)UIButton *lastBtn;
//基本数据类型
简单赋值 (对基础数据类型 (例如NSInteger,CGFloat)和C数据类型(int, float, double, char,Bool 等))
Objective-C中为何用copy修饰block
因为不用copy修饰的访问外部变量的block,只在他所在的函数被调用的那一瞬间可以使用。之后就消失了。
Objective-C中为何用copy修饰block
1.__block对象在block中是可以被修改、重新赋值的。
2.__block对象在block中不会被block强引用一次,从而不会出现循环引用问题。
__block和__weak修饰符的区别其实是挺明显的:
1.__block不管是ARC还是MRC模式下都可以使用,可以修饰对象,还可以修饰基本数据类型。
2.__weak只能在ARC模式下使用,也只能修饰对象(NSString),不能修饰基本数据类型(int)。
3.__block对象可以在block中被重新赋值,__weak不可以。