问题:
public Item getCopy()
{
return (Item)this.MemberwiseClone();
}
函数MemberwiseClone()是什么意思?
答案:
浅拷贝
什么是深拷贝?什么是浅拷贝?区别是什么?
首先C#的变量类型分为两类:值类型、引用类型;
我所理解的深、浅拷贝最本质的区别在于对空间的分配,值类型被分配在栈上,引用类型分配在堆上;
所以这里的深、浅拷贝其实是针对的是引用类型
浅拷贝是在堆上只分配一份,其他都引用这一份,每份之间是引用关系;
深拷贝是在堆上分配多份,每一份拷贝都是独立的,没有关系;
例子(链接):