深拷贝与浅拷贝
时间:2010-11-22 来源:吹风
1.深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。
2.浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同。对其中任何一个对象的改动都会影响另外一个对象。
代码如下:
public class ChuiFeng
{
public ChuiFeng LightCopy()
{
return (ChuiFeng)this.MemberwiseClone();
}
public ChuiFeng DeepCopy()
{
ChuiFeng colorPrototype;
MemoryStream memoryStream = new MemoryStream();
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(memoryStream, this);
memoryStream.Position = 0;
colorPrototype = (ChuiFeng)formatter.Deserialize(memoryStream);
return colorPrototype;
}
}
相关阅读 更多 +