深拷贝
会产生新的对象,分配一个新的内存空间。
浅拷贝
不会产生行的对象,是指针拷贝,公用一个存储空间。
-
Copy:
不可变对象:进行copy操作是指针拷贝,不会产生新的对象,是浅拷贝;
可变对象:进行copy操作是值拷贝,会产生新的对象,是深拷贝。当copy作为可变对象的修饰符时,就会把这个可变对象变成不可变对象,然后调用可变对象的方法时会报该方法找不到。 -
MutableCopy:
对不可变对象和可变对象进行mutableCopy时,会产生新的对象,是深拷贝。
会产生新的对象,分配一个新的内存空间。
不会产生行的对象,是指针拷贝,公用一个存储空间。
Copy:
不可变对象:进行copy操作是指针拷贝,不会产生新的对象,是浅拷贝;
可变对象:进行copy操作是值拷贝,会产生新的对象,是深拷贝。当copy作为可变对象的修饰符时,就会把这个可变对象变成不可变对象,然后调用可变对象的方法时会报该方法找不到。
MutableCopy:
对不可变对象和可变对象进行mutableCopy时,会产生新的对象,是深拷贝。
本文标题:iOS Copy和MutableCopy的区别?
本文链接:https://www.haomeiwen.com/subject/vnnrhktx.html
网友评论