Bản sao sâu nhân bản mọi thứ. Bản sao sâu của một bộ sưu tập là hai bộ sưu tập có tất cả các phần tử trong bộ sưu tập gốc được sao chép
Bản sao sâu được sử dụng để tạo bản sao sâu hoàn chỉnh của các loại tham chiếu nội bộ.
Nói cách khác, một bản sao sâu xảy ra khi một đối tượng được sao chép cùng với các đối tượng mà nó tham chiếu đến
Ví dụ
class DeepCopy { public int a = 10; } class Program { static void Main() { //Deep Copy DeepCopy d = new DeepCopy(); d.a = 10; DeepCopy d1 = new DeepCopy(); d1.a = d.a; Console.WriteLine("{0} {1}", d1.a, d.a); // 10,10 d1.a = 5; Console.WriteLine("{0} {1}", d1.a, d.a); //5,10 Console.ReadLine(); } }
Đầu ra
10 10 5 10