Metoda rwiseclone (sistem)

De exemplu, să considerăm un obiect numit X, care se referă la obiectele A și B. Obiectul B, la rândul său, se referă la obiectul C. Copia incomplet al X creează un nou X2 obiect, care se referă de asemenea la obiecte A și B. În contrast profund copie creează un nou X X2 obiect, care se referă la noi obiecte A2 și B2, care sunt replici ale și B. B2, la rândul său, se referă la noul C2 obiect, care este o copie a C. Acest exemplu arată diferența dintre operația de copiere superficială și profundă.

Există diferite scenarii pentru punerea în aplicare a operația de copiere profundă în cazul în care operațiunea o copie superficială a metodei MemberwiseClone nu satisface nevoile dumneavoastra. inclusiv următorii parametri principali:

Apelați constructorul clasei obiectului de a crea o copie cu valorile care sunt preluate dintr-un prim obiect la un al doilea obiect. Aceasta presupune că valoarea obiectului este complet determinat de constructor.

Serializa un obiect pentru a obține copia sa profundă, și apoi restaurați datele serializate la o altă variabilă obiect.

Reflecția se poate utiliza recursie pentru a efectua o operație de copiere profundă.

platformă universală pentru Windows
Disponibil cu 8
.NET Framework
Disponibil cu 1.1
Biblioteca de clasă portabil
Acceptată în: platforma .NET portabil
Silverlight
Disponibil cu 2.0
Silverlight pentru Windows Phone
Disponibil cu 7.0
Windows Phone
Disponibil cu 8,1