IOS 5中的strong和weak关键字
2013-05-23 22:23
225 查看
在Apple推出IOS 5后,就新增了很多功能,在开发中也一样,比如storyboard,个人觉得这真是个非常好的创新和工具,大大简化了开发,同时也更加生动。
今天将谈谈IOS 5中新增的strong和weak关键字
strong 用来修饰强引用的属性;
@property (strong) SomeClass * aObject;
对应原来的
@property (retain) SomeClass * aObject; 和 @property (copy) SomeClass * aObject;
weak 用来修饰弱引用的属性;
@property (weak) SomeClass * aObject;
对应原来的
@property (assign) SomeClass * aObject;
__weak, __strong 用来修饰变量,此外还有 __unsafe_unretained, __autoreleasing 都是用来修饰变量的。
__strong 是缺省的关键词。
__weak 声明了一个可以自动 nil 化的弱引用。
__unsafe_unretained 声明一个弱应用,但是不会自动nil化,也就是说,如果所指向的内存区域被释放了,这个指针就是一个野指针了。
__autoreleasing 用来修饰一个函数的参数,这个参数会在函数返回的时候被自动释放。
今天将谈谈IOS 5中新增的strong和weak关键字
strong 用来修饰强引用的属性;
@property (strong) SomeClass * aObject;
对应原来的
@property (retain) SomeClass * aObject; 和 @property (copy) SomeClass * aObject;
weak 用来修饰弱引用的属性;
@property (weak) SomeClass * aObject;
对应原来的
@property (assign) SomeClass * aObject;
__weak, __strong 用来修饰变量,此外还有 __unsafe_unretained, __autoreleasing 都是用来修饰变量的。
__strong 是缺省的关键词。
__weak 声明了一个可以自动 nil 化的弱引用。
__unsafe_unretained 声明一个弱应用,但是不会自动nil化,也就是说,如果所指向的内存区域被释放了,这个指针就是一个野指针了。
__autoreleasing 用来修饰一个函数的参数,这个参数会在函数返回的时候被自动释放。
相关文章推荐
- iOS 5中的strong和weak关键字
- ios strong和weak关键字
- IOS-36-Object-C语法之属性关键字的使用(assign/weak/strong/copy)
- iOS关键字strong/weak/assign/retain/nonatomic/atomic
- IOS中级篇——何时使用copy, strong, weak, assign关键字定义属性
- iOS 5中的strong和weak关键字
- iOS 5中的strong和weak关键字
- iOS 5中的ARC和strong和weak关键字
- iOS 5中的strong和weak关键字
- ios_基础篇1_关键字(strong和weak)
- IOS retain strong copy assign weak关键字
- 关于iOS中的strong,weak,assign,copy,retain等关键字的总结
- iOS的copy,strong,weak,assign关键字的使用,网罗下来大概总结一下
- 关于iOS中的strong,weak,assign,copy,retain等关键字的总结
- iOS 关键字 copy,assign,strong,retain,weak,readonly,readwrite,nonatomic,atomic,unsafe_unretained的使用与区别
- iOS 5中的strong和weak关键字
- iOS中的strong,weak,assign,copy,retain等关键字的总结
- iOS 5中的strong和weak关键字
- IOS 5中的strong和weak关键字
- iOS 5中的strong和weak关键字