也就是复制。在C#中提供了ICloneable接口。可以方便的实现这个接口。实现浅拷贝可以调用object的protected方法MemberwiseClone来做。
如何做深拷贝呢?
将每个自定义的类完成ICloneable接口,每个只包含primitive type的简单类完成浅拷贝操作,如果一个类包含了简单类,先完成浅拷贝,再调用对象的拷贝,这样保证自己的clone方法完成的是深拷贝。这个对象再对上层负责,保证整个体系里面都是深拷贝。
也就是复制。在C#中提供了ICloneable接口。可以方便的实现这个接口。实现浅拷贝可以调用object的protected方法MemberwiseClone来做。
如何做深拷贝呢?
将每个自定义的类完成ICloneable接口,每个只包含primitive type的简单类完成浅拷贝操作,如果一个类包含了简单类,先完成浅拷贝,再调用对象的拷贝,这样保证自己的clone方法完成的是深拷贝。这个对象再对上层负责,保证整个体系里面都是深拷贝。