码迷,mamicode.com
首页 > 其他好文 > 详细

深拷贝和浅拷贝的区别?

时间:2016-06-09 19:49:58      阅读:357      评论:0      收藏:0      [点我收藏+]

标签:

     浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(名称不同)。浅拷贝是指针拷贝,对其中任何一个对象的改动都会影响另外一个对象。

    举个例子,一个人一开始叫张三,后来改名叫李四了,可是还是同一个人,不管是张三缺胳膊少腿还是李四缺胳膊少腿,都是这个人倒霉。

 

    深拷贝是指源对象与拷贝对象互相独立,深拷贝不但对指针拷贝还对指针指向的内容进行拷贝,其中任何一个对象的改动都不会对另 外一个对象造成影响。

     举个例子,一个人名叫张三,后来用他克隆(假设法律允许)了另外一个人,叫李四,不管是张三缺胳膊少腿还是李四缺胳膊少腿都不会影响另外一个人。比较典型的就是Value(值)对象,如预定义类型Int32,Double,以及结构(struct),枚举(Enum)等。

深拷贝和浅拷贝的区别?

标签:

原文地址:http://www.cnblogs.com/sanvow/p/5572602.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!