复制对象 和 浅拷贝,深拷贝
来源:互联网 发布:lazada淘宝精选入驻 编辑:程序博客网 时间:2024/05/16 07:50
复制对象顾名思义,复制一个对象作为副本,它会开辟一块新的内存(堆内存)来存储副本对象,就像复制文件一样.既源对象和副本对象是两块不同的内存区域.
对象具备复制功能,必须实现
<NSCopying>协议
<NSMutableCopying>协议
常用的可复制对象有, NSNumber, NSstring, NSArray, NSDictionary, NSMutableDictionary, NSMutableArray, NSMutableString.
复制对象的种类
copy: 产生对象的副本是不可变的
mutableCopy: 产生的对象是可变的
浅拷贝和深拷贝的区别
浅复制,只复制对象的本身,对象里的属性,包含的对象不做复制.
深复制则既复制对象本身,对象的属性也会复制一份.
Foundation 框架中支持复制的泪,默认是浅复制
浅拷贝 Shallow copy深拷贝 Deep copy
Object A ----------->copy ObjectB Object A ----------->copy ObjectB
NSColor *textColor NSColor *textColor NSColor *textColor NSColor *textColor
| |||
|-----------------> textColor <-------------------| textColor textColor
0 0
- 复制对象 和 浅拷贝,深拷贝
- js中对象的复制,浅复制(浅拷贝)和深复制(深拷贝)
- 类对象的浅拷贝和深拷贝(浅复制和深复制)
- 对象深拷贝和浅拷贝
- js 对象浅拷贝和深拷贝
- 对象的深拷贝和浅拷贝
- 拷贝 Python 对象 浅拷贝和深拷贝
- 拷贝Python 对象-----浅拷贝和深拷贝
- 拷贝Python对象、浅拷贝和深拷贝
- 拷贝python对象之浅拷贝和深拷贝
- Python对象的拷贝,浅拷贝和深拷贝。
- 拷贝Python对象、浅拷贝和深拷贝
- IOS中复制对象的用法及深拷贝和浅拷贝详解
- IOS中复制对象的用法及深拷贝和浅拷贝详解
- IOS中复制对象的用法及深拷贝和浅拷贝详解
- iOS中复制对象的用法及深拷贝和浅拷贝详解
- iOS中复制对象的用法及深拷贝和浅拷贝详解
- IOS中复制对象的用法及深拷贝和浅拷贝详解
- kafka详解三:开发Kafka应用
- 在BSP的.bat文件下設置全局變量方法
- Flex自制时间显示。
- android menu放在下面且横排
- linux 检查内存情况
- 复制对象 和 浅拷贝,深拷贝
- 使用milang出错:LookupError: unknown encoding: idna
- 【Leetcode】二叉树层遍历算法
- CSS的inherit与auto
- pthread_cond_wait 和 pthread_cond_signal
- perl多进程读写文本
- 电子商务平台出现跑腿服务公司
- 【GridView】GridView常用属性
- 算法导论笔记(五) :基数排序与C++实现