专栏名称: Cocoa开发者社区
CocoaChina苹果开发中文社区官方微信,提供教程资源、app推广营销、招聘、外包及培训信息、各类沙龙交流活动以及更多开发者服务。
目录
相关文章推荐
51好读  ›  专栏  ›  Cocoa开发者社区

OC深拷贝PK浅拷贝,欢迎来战!

Cocoa开发者社区  · 公众号  · ios  · 2017-02-23 18:22

正文

请到「今天看啥」查看全文


楼主不认为那个例子属于深拷贝,是由于楼主把深拷贝定义为“两者完全一模一样” ,但其实,很多oc书籍上对于深拷贝的描述 都是 只要指针变了(两个指针指向的内存不一样,说明开辟了新内存),就是深拷贝,而浅拷贝就是单纯的指针赋值,指向的内存还是同一块。

就是说,只要开辟了新内存的拷贝就是深拷贝。

说来说去就是一个概念的定义的问题,,对于“深拷贝”这个概念的定义不一样,得出的结论就不一样。


ID:ph101


数组和数组数组元素是两种东西。

OC概念中只要申请了新的内存空间就是深拷贝。

和其他语言可能不一样。

你所理解的深拷贝应该可以用完全拷贝来阐述。

OC中深拷贝要求仅仅为单层指针拷贝。


ID:高军全


小弟认为是这样的, 这种问题不该用常有的逻辑思维来评判, 这是苹果定的, 所以得听apple说

深拷贝和浅拷贝的本质是有没有开辟新的内存空间并复制对象的内容以及它所包含的对象的内容, 我们举几个例子

NSString *str1 = @"123";







请到「今天看啥」查看全文


推荐文章
摩拜单车上海  ·  上海,2000万人留下来的50个理由
7 年前
芯师爷  ·  苹果产业链专利诉讼频发
7 年前
洞见  ·  最好的关系,是相处不累
7 年前