zoukankan      html  css  js  c++  java
  • 深拷贝与浅拷贝

      今天在看设计模式的时候遇到深拷贝和浅拷贝一词,不太理解。通过查阅资料后大概得出如下解释。

      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;

    }
    }
  • 相关阅读:
    输出国际象棋&&输出余弦曲线
    打鱼晒网问题
    ATM模拟程序
    getline()函数
    AC小笔记
    ural 1208 Legendary Teams Contest
    汇编贪吃蛇
    供给与需求的市场力量
    垄断竞争
    相互依存性和贸易的好处
  • 原文地址:https://www.cnblogs.com/chuifeng/p/1884741.html
Copyright © 2011-2022 走看看