copy
修饰不可变对象,不会重新开辟内存空间,比如 NSString, NSArray, NSDictionary (浅拷贝)。 修改源对象的属性和行为,不会影响副本对象。 修改副本对象的属性和行为,不会影响源对象。
copyString是copy的一个不可变对象, 系统只会生成另外一个指针并指向同一块内存空 间。每当 string = @"new_nama"新赋值,因为定义的 NSString是不可变对象,还有互不影响 的原则下,系统会重新开辟一块内存空间。 copy可变对象,copy会重新开辟内存空间(深拷贝)。 copy出来的对象( NSMutableString,NSMutableArray,NSMutableDictionary) 一定是不可变的。