OC语言-NSMutableArray为什么要用strong来修饰
来源:互联网 发布:淘宝详情页面设计 编辑:程序博客网 时间:2024/06/08 15:01
Talk is cheap show you my code!
NSMutableArray属性为什么要用strong来修饰,其实就是一个深复制和浅复制的问题。
<pre name="code" class="objc">#import "ViewController.h"@interface ViewController ()@property (nonatomic, copy) NSMutableArray *array;@property(nonatomic,copy) NSMutableArray *arrayCopy;@property(nonatomic,strong) NSMutableArray *arrayStrong;@end@implementation ViewController- (NSMutableArray *)array { if (_array == nil) { _array = [NSMutableArray array]; } return _array;}- (void)viewDidLoad { [super viewDidLoad]; // NSMutableArray 为什么要strong的原因,此处会崩溃!因为调用的是set方法,copy会拷贝一个不可变的副本,再为其添加对象便会崩溃! self.arrayCopy = [NSMutableArray array]; [self.arrayCopy addObject:@"copy"]; self.arrayStrong=[NSMutableArray arrayWithArray:@[@"strong",@"strong"]]; [self.arrayStrong addObject:@"strong"]; }- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { // NSMutableArray 此时,调用的是get方法,get方法实例化了一个可变的对象,此时是可以再为其添加对象的,这个需要需要记住! [self.array addObject:@"copy"]; NSLog(@"%@",self.array);}@end
0 0
- OC语言-NSMutableArray为什么要用strong来修饰
- 为什么NSMutableArray必须用strong,而NSArray必须用copy?
- 为什么NSMutableArray必须用strong,而NSArray必须用copy?
- iOS内存管理(6)--NSArray与NSMutableArray用copy修饰还是strong
- NSString为什么用copy而不是strong,NSMutableString为什么用strong而不是用copy(或者NSArray及NSMutableArray等)
- NSMutableArray 被copy、strong修饰后的变化
- oc中strong,copy修饰符区别
- iOS 开发 NSString(NSDictory,NSArray)为什么用copy修饰,而不是用strong修饰
- NSString类型的属性一般用copy修饰,而不是用strong来修饰。
- NSString为什么要用copy关键字,如果用strong会有什么问题 OC中的深拷贝与浅拷贝
- OC语言-----NSArray , NSMutableArray, NSNumber 基本用法
- OC-NSArray和NSMutableArray
- OC-NSMutableArray
- OC的深拷贝与浅拷贝--NSArray与NSMutableArray应该使用copy还是strong?
- iOS中为什么block用copy来修饰
- 为什么用static来修饰方法或者变量?用处?
- iOS @property (copy) NSMutableArray *array;用copy、strong出现问题
- block要用copy修饰,还是用strong
- java基础
- springmvc 集成apache cxf 开发webservice 示例
- Servlet
- 【计蒜客】难题题库 003 判断质数
- 离队后的杂念
- OC语言-NSMutableArray为什么要用strong来修饰
- 212 Word Search II [Leetcode]
- python内建函数——类型转化函数
- 几种常见模式识别算法整理和总结
- hdu 2243(ac自动机+矩阵快速幂)
- js返回上一页并刷新的多种实现方法
- java事务的处理
- 黑马程序员----Objective-C学习笔记之内存管理
- Centos 7 安装 vim自动补全神器 YouCompleteMe