1.Property of mutable type 'NSMutableArray' has 'copy' attribute; an immutable object will be stored instead;
**Exam** : @property (nonatomic, copy) NSMutableArray *coursesArray;
**Reason:**
defined:@property (copy, nonatomic) NSMutableArray *words;
NSArray *fixedWords = @[@"One",@"Two", @"Three", @"Four", @"Five", @"Six", @"Seven", @"Eight"];
NSMutableArray *mutableWords = [[NSMutableArray alloc] initWithArray:fixedWords];
self.words = mutableWords;
[self.words removeOjbectAtIndex:2];
这时候会出错:unrecoginzed selector sent to instance;
copy 通常会返回不可变的副本。
因此,当一个NSMutableArray设置copy,会返回一个NSArray类型的包含同样数据的结构。
此处建议用strong来修饰mutableArray.
说到这里 就得提一下copy 、 mutableCopy 以及strong的区别。关于copy 、mutableCopy 、strong三者间的关系
网友评论