|
|
<div id="cnblogs_post_body">本文主要通过事例分析引用类型的浅拷贝和深拷贝之间的区别,
还是从代码开始吧:
一、浅拷贝:
声明一个将要被克隆的类 clsShallow 和它将要包含的引用类型成员clsRefSalary类,clsShallow包含 CompanyName(静态字符串)、Age(值类型)、EmployeeName(字符串)、EmpSalary(引用类型)四个成员。
<div class="cnblogs_code">public class clsShallow { public static string CompanyName = "My Company"; public int Age; public string EmployeeName; public clsRefSalary EmpSalary; public clsShallow CreateShallowCopy(clsShallow inputcls) { return (clsShallow)inputcls.MemberwiseClone(); } } public class clsRefSalary { public clsRefSalary(int _salary) { Salary = _salary; } public int Salary; } |
|