博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OC深浅复制
阅读量:7080 次
发布时间:2019-06-28

本文共 451 字,大约阅读时间需要 1 分钟。

 

浅复制:指针的复制

深复制:内容的复制

 

主要有两个关键字  copy 和mutablecopy

 

对于基本类型 判断深浅方法

1.只要=右边从创建到赋值,至少包含一个NSMutable便会重新生成一个对象。如果对一不可变对象复制,copy是指针复制(浅拷贝)和mutableCopy就是对象复制(深拷贝)。但是copy返回的对象是不可变的。

对于自定义对象的copy和mutableCopy

首先必须遵守NSCopying,NSMutableCopying协议,不然当执行copy和mutableCopy时会崩溃

 

 

容器类型

 

 

 

总结

对于基本类型 copy是浅复制 mutablecopy是深复制

对于容器集合类型  可变不可变copy都是深复制  但是对于可变的如果用copy的话copy过来是一个不可变的,这样会导致修改是崩溃

 

*项目中切记勿对可变集合copy这样可能在操作新指针指向的对象时候回崩溃。

转载于:https://www.cnblogs.com/keyan1102/p/6063548.html

你可能感兴趣的文章
AMD楚含进:为什么说VR正在颠覆传统的电竞?
查看>>
人工智能仍然只是一个梦:浅谈“深度学习”目前存在着的若干问题
查看>>
远程访问传感器获取数据并传入数据库
查看>>
量子计算笔记|可能会涉及一点点高量的量子力学基础(一)
查看>>
Valve已着手研发第二代室内VR光学透镜,配合Valve软件效果更佳
查看>>
掌控卫星绕地球一周 淘宝1万元起拍卫星驾驶权
查看>>
Mackevision 赞助上海第三届中国汽车论坛
查看>>
2017:连接客户的一年
查看>>
ORA-10997:another startup/shutdown operation of this instance in progress解决方法
查看>>
Velocity工作原理解析和优化
查看>>
zabbix 监控 Tomcat
查看>>
如何用Exchange Server 2003 构建多域名邮件系统
查看>>
Delphi内嵌汇编语言BASM精要(转帖)
查看>>
ASP.NET MVC 在控制器中接收视图表单POST过来的数据方法
查看>>
云计算这么火,但市场发展依然存在着7大障碍
查看>>
Oracle 11g AMM与ASMM切换
查看>>
bootstrap-wysiwyg中JS控件富文本中的图片由本地上传到服务器(阿里云、七牛、自己的数据库)...
查看>>
H3 BPM SharePoint解决方案
查看>>
[原]linux 修改 hostname 立即生效
查看>>
图片抖动效果(兼容)
查看>>