NSString为何要用copy修饰,而不是strong? NSString本身是无所谓的,但是如果一个 NSString 指针指向了一个 NSMutableString的内存空间的话,如果使用 strong 修饰的话,如果你在别处修改这个值的话,那么原来的值也会改变。用 copy 是生成了一份新的内存空间,所以原值不会改变。 所以用copy是为了安全,防止NSMutableString赋值给NSString时,前者修改引起后者值变化而用的.