草庐IT

C#深拷贝方法

概述   为什么要用到深拷贝呢?比如我们建了某个类Person,并且实例化出一个对象,然后,突然需要把这个对象复制一遍,并且复制出来的对象要跟之前的一模一样,来看下我们一般会怎么做。方法一(利用反射实现)publicstaticTDeepCopy(Tobj){//如果是字符串或值类型则直接返回if(objisstring||obj.GetType().IsValueType)returnobj;objectretval=Activator.CreateInstance(obj.GetType());FieldInfo[]fields=obj.GetType().GetFields(Bindin