在objc中我看到这段代码:
- (void)setSubtitle:(NSAttributedString *)subtitle
{
self.subtitleLabel.attributedText = [subtitle copy];
}
Run Code Online (Sandbox Code Playgroud)
它基本上是复制一个不可变的字符串.有什么缘故吗?这是一个优势还是浪费时间?我不能问作者,因为他好了,不再在这里了.我没有看到这样做的意义.
使用copy是因为有人可以实际将可变属性字符串传递给您的setSubtitle:方法.使用copy确保您拥有属性字符串的不可变副本,以防修改原始可变版本.
但在这种情况下,它是毫无意义的,因为声明attributedText属性,因此您实际上在代码中有一个冗余调用.UILabelcopycopy
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |