1.strong和copy的区别
我们经常在给一个类定义property时,会考虑到修饰符strong和copy,通常情况下NSArray和NSString,最好使用copy。But why?这是为了防止赋值给它的是可变的数据,如果可变的数据发生了变化,那么该property也会发生变化。
使用strong,则person.bookArray1与可变数组books指向同一块内存区域,books内容改变,导致person.bookArray1的内容改变,因为两者是同一个东西;而使用copy,person.bookArray2在赋值之前,将books内容复制,创建一个新的内存区域,所以两者不是一回事,books的改变不会导致person.bookArray2的改变。
2.深.浅拷贝与copy.strong
网友评论