Grunt exemplar

Författare: Lewis Jackson
Skapelsedatum: 8 Maj 2021
Uppdatera Datum: 25 Juni 2024
Anonim
Warmachine Armies - Grand Examplar Kreoss and Friends
Video: Warmachine Armies - Grand Examplar Kreoss and Friends

Innehåll

Definition - Vad betyder Shallow Copy?

Grunt exemplar, i C #, är processen att skapa en klon av ett objekt genom att instansera en ny instans av samma typ som originalobjektet och kopiera de icke-statiska medlemmarna i det befintliga objektet till klonen. Medlemmarna i värdetyp kopieras bit för bit medan medlemmarna i referenstypen kopieras så att det refererade objektet och dess klon refererar till samma objekt.


I allmänhet används grunt kopia när prestanda är ett av kraven tillsammans med villkoret att objektet inte kommer att muteras under hela applikationen. Genom att skicka klonen som innehåller immutable data elimineras möjligheten till korruption med någon kod. Grunt exemplar har visat sig vara effektivt där objektreferenser tillåter att objekt flyttas runt av minnesadressen så att hela objektet inte behöver kopieras.

Grunt exemplar kallas också medlemsvis kopia.

En introduktion till Microsoft Azure och Microsoft Cloud | I hela denna guide kommer du att lära dig vad cloud computing handlar om och hur Microsoft Azure kan hjälpa dig att migrera och driva ditt företag från molnet.

Techopedia förklarar Shallow Copy

Grunt exemplar liknar djup kopia i tilldelningen av varje medlem av ett objekt till det för ett annat objekt, men det skiljer sig på det sätt på vilket referensfältet kopieras. Till skillnad från i grunt exemplar där referensen endast kopieras, i djup kopia skapas en ny kopia av det refererade objektet.


Tänk till exempel på ett anställdsobjekt som innehåller information om personlig information, inklusive en lista med adressobjekt som lagrar flera anställdas adresser. Genom att utföra en ytlig kopia av ett anställdsobjekt kan en klon av medarbetarobjektet skapas med referenser till samma lista över adressobjekt som ägs av det ursprungliga anställdsobjektet.

Metoderna för att utföra grunda kopior inkluderar:
  • Ring objektet MemberwiseClone-metoden
  • Skapa en klon manuellt genom en anpassad metod som är tråkig men lätt att kontrollera
  • Använd en reflektionsteknik som ger automatiserad anläggning för att utföra grunda kopior, men med prestandakostnader
  • Använd en serialiseringsmetod som är långsammare än reflektion men automatiserad och enkel
Grunt exemplar kan inte användas när objektet har medlemmar av referenstyp som ofta ändras. Denna definition har skrivits i C #