使用IL实现对象的Clone,浅拷贝,和深拷贝的几篇文章

对于实现任意对象的Clone,以前也看到过不少讨论 的文章和实现。暂时先发到首页,供大家讨论,如果觉得不合适我会拆下

以下是Whizzo's 的两篇文章:
Object Cloning Using IL in C# 
            这篇文章作者分别用IL,反射实现了浅拷贝,并对普通的clone、IL、反射这三种实现方式做性能的对比


Object Deep Cloning using IL in C# - version 1.0 
            这篇文章作者分别用IL,反射实现了浅拷贝和深拷贝,并对普通的clone、IL深拷贝、IL浅拷贝、反射这三种实现方式做性能的对比,
            目前只支持Colone的对象具有默认构造函数的对象。

Code

Clone类
Code

测试程序:
namespace Cloning
{
   
class Program
   
{
       
static void Main(string[] args)
       
{
           
// Do some cloning tests
            Cloning.TestCloning tc = new Cloning.TestCloning();
            tc.DoTest();
        }

    }

}

 

还有一篇:Rick Minerich - A .NET Assembly for Cloning Objects with Arbitrary Field Value Changes: IcManipluator

Update 2008-12-26:

Object Deep Cloning using IL in C# - version 1.1

 

posted @ 2008-07-13 16:42  代码乱了  阅读(...)  评论(...编辑  收藏