静态分析错误解析

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三者间的关系

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容